如何取指定文本当中的一段文本
ptui_checkVC('1','457263458756342');比如上面的这段文本,我想取里面的457263458756342,但是每次又是随机的,应该如何取呢,谢谢大家了 --------------------编程问答-------------------- ptui_checkVC('1','457263458756342');
你要提取的文本,是否全是这样的?就是ptui_checkVC开始,然后一对括号里,2个串。
如果是,可以定义一个正则表达式用以提取 --------------------编程问答-------------------- 嗯,是的,但是正则表达式是多少呢,谢谢了 --------------------编程问答--------------------
嗯,是的,但是正则表达式是多少呢,谢谢了 --------------------编程问答--------------------
用InStr結合SubString試試。 --------------------编程问答--------------------
string str = "ptui_checkVC('1','457263458756342')";
int index = str.IndexOf(",");
int endindex = str.LastIndexOf(",");
if (index > -1)
{
Response.Write(str.Substring(index+2,endindex-1));
}
这样呢 --------------------编程问答-------------------- Response.Write输出的就是你想 取得。。 --------------------编程问答-------------------- 5楼写错了。改下
--------------------编程问答-------------------- 方式一:
string str = "ptui_checkVC('1','45ccccc7263458756342')";
int index = str.IndexOf(",");
int endindex = str.LastIndexOf("'");
if (index > -1)
{
Response.Write(str.Substring(index+2,(endindex-index-2)));
}
如楼上沉浮所示,利用string.IndexOf()确定取提取串的起始位置
方式二:
使用正则表达式,提取两个引号间的连续15个数字,象下面这样:
string source = @"x000xxxptui_checkVC('1','457263458756342');xx00000xx";--------------------编程问答-------------------- 上面改一下,忘记删除最后一个引号了
Regex rgx = new Regex(@"'\d{15}'");
Match m = rgx.Match(source);
string value = m.Value.Substring(1);
string value = m.Value.Substring(1, 15);--------------------编程问答-------------------- 多说一句,这个正则表达式的精度,仍要取决于你的需求精度,否则仍有可能失配。 --------------------编程问答--------------------
如果"ptui_checkVC('1','025462546544');"中"ptui_checkVC('0'是0,那么就是"ptui_checkVC('0','gj45');",如果"ptui_checkVC('1'是1,那么就是"ptui_checkVC('1','fv1f4sf4sfv1sfb');",所以只能用正则 --------------------编程问答--------------------
如果"ptui_checkVC('1','025462546544');"中"ptui_checkVC('0'是0,那么就是"ptui_checkVC('0','gj45');",如果"ptui_checkVC('1'是1,那么就是"ptui_checkVC('1','fv1f4sf4sfv1sfb');",所以只能用正则 --------------------编程问答-------------------- 我来发一个VB.net的吧。首先我想你的字符串应该是这样的
ptui_checkVC('1','随机数字');
原理:
我们可以先利用instr找到 ',' 所在的位置
然后找到最后一个 单引号 所在的位置就可以用MID把值提取出来了。
以下为是实例。在VB.net 2008测试通过
--------------------编程问答-------------------- Split函数
Dim Temp As String = "ptui_checkVC('1','1234567894811');" '你原来的字符串
Dim FGF As String = "','"
Dim Start As Integer = InStr(Temp, FGF) + FGF.Length‘获取','的结束位置
Dim TheEnd As Integer = InStrRev(Temp, "'")'获取最后一个单引号所在的未知
Dim Result As String = Mid(Temp, Start, TheEnd - Start)'取出结果
MsgBox("提取字符串的结果是:" & Result)
Dim Cell(2)
Dim Temp As String
Cell=Split("ptui_checkVC('1','1234567894811');" ",")
Temp=cell(1) --------------------编程问答--------------------
不好意思写错了...
Dim Cell(4)
Dim Temp As String
Cell=Split("ptui_checkVC('1','1234567894811');" "'")
Temp=cell(3)
补充:.NET技术 , VB.NET