正则表达式最后六位数

时间:2013-07-15 15:57:36

标签: xml regex

我已经多次尝试过这个等式。而且,我在XML中使用正则表达式来获取数字字符串的最后六个字符。

例如,字符串:ExecID=238423842394283549283523

当我说它不起作用时,我的意思是它仍然返回整个字符串而不是用后六位数替换它。

我有一个使用变量的XML文件,在该文件中是一个规则:

formattedText="$(ExecID:R/.*(/\d{6}$)/$1/)"

我的日志并没有告诉我什么。有什么建议吗?

2 个答案:

答案 0 :(得分:0)

我对XML中的正则表达不是很熟悉,但在python中你很容易将它与

匹配
R=re.compile("(.{6})$")
match=R.findall(string)[0]

请注意,如果您使用多行(re.M)编译器将“$”视为EOL而不是EOF,但是当您禁用它时它应该正常工作

答案 1 :(得分:0)

这是在perl中进行扩展的一种扩展方式,匹配在一行上,然后是替换。 Javascript非常相似。

$ExecID =~ /(\d){6}$/;
if($1) {
   $ExecID = $1;
} else {
   #no match?
}

可能会崩溃,但为了便于阅读,我会将其展开。