正则表达式问题

时间:2010-05-31 08:33:05

标签: c# .net regex

如何搜索整个字符串以查找特定匹配项。 它将包含带有int或十进制数字的字符 例如A12B32.25C-456D-75.E75 我知道这将从A开始,以E结尾 我想我可以用“^”和“$”吧? 但我在其他部分有点迷失,以检查字符和int或小数。 如果你能给正则表达式并解释一下,我会很高兴的。)。

PS。 d-75。没有错误...

提前致谢。

2 个答案:

答案 0 :(得分:2)

作为一个自由间距的正则表达式,希望我正确地猜测你的意思:

^                   # start of line
A(-?\d+\.?\d*)      # match "A", followed by a number with optional sign and decimal part
B(-?\d+\.?\d*)      # same with "B"
C(-?\d+\.?\d*)      # etc.
D(-?\d+\.?\d*)
E(-?\d+\.?\d*)
$                   # end of line

这会将数字捕获到反向引用1-5中。如果你告诉我们你打算如何使用正则表达式,我可以改进我的答案。

答案 1 :(得分:0)

你在做文字模式匹配吗? - 你注意到你嵌入了正则表达式,如句点==。在你的模式中。

根据您使用的正则表达式引擎,可能存在“仅模式”选项。 例如

grep -F 'mypattern'  myfile

阻止正则表达式引擎看到模式中的元字符。

您使用的是什么环境/正则表达式?