delphi编程,读取到文本中有一行字符串: a='111111' 请问正则表达式取得111111?
varRegExpr:TRegExpr;beginRegExpr:=TRegExpr.Create;tryRegExpr.Expression:='"(.*?)"';if...
var
RegExpr: TRegExpr;
begin
RegExpr := TRegExpr.Create;
try
RegExpr.Expression := '"(.*?)"';
if RegExpr.Exec(s) then
repeat
Edit1.Text:= RegExpr.Match[1];
until not RegExpr.ExecNext;
finally
RegExpr.Free;
end;
取不到结果,正值表达式里如何表示“'”?刚刚接触正值表达式,急!
var
RegExpr: TRegExpr;
begin
RegExpr := TRegExpr.Create;
try
RegExpr.Expression := '''(.*?)''';
if RegExpr.Exec(s) then
repeat
Edit1.Text:= RegExpr.Match[1];
until not RegExpr.ExecNext;
finally
RegExpr.Free;
end;
自己已经尝试出来了,单引号应该表达为连续两个单引号。 展开
RegExpr: TRegExpr;
begin
RegExpr := TRegExpr.Create;
try
RegExpr.Expression := '"(.*?)"';
if RegExpr.Exec(s) then
repeat
Edit1.Text:= RegExpr.Match[1];
until not RegExpr.ExecNext;
finally
RegExpr.Free;
end;
取不到结果,正值表达式里如何表示“'”?刚刚接触正值表达式,急!
var
RegExpr: TRegExpr;
begin
RegExpr := TRegExpr.Create;
try
RegExpr.Expression := '''(.*?)''';
if RegExpr.Exec(s) then
repeat
Edit1.Text:= RegExpr.Match[1];
until not RegExpr.ExecNext;
finally
RegExpr.Free;
end;
自己已经尝试出来了,单引号应该表达为连续两个单引号。 展开
2个回答
展开全部
var
tmp:string;
begin
tmp:=Edit1.Text;
tmp:=midstr(tmp,posex('''',tmp)+1,posex('''',tmp,posex('''',tmp)+1)-posex('''',tmp)-1);
其中,假设edit1.text就是a='111111'这个字符串。
需要说明的是:要在上面的uses里添加StrUtils,这是字符串操作的一个库。
midstr是取一个字符串中从某个位置开始的N个字符,posex是获取某个子字符串的起始位置,它有一个可省略的参数offset,是指从哪个位置开始搜索。
最后,单引号在Delphi中的表达方式是'''',就是连续四个单引号。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询