匹配字符串如?$ skip = [0-9]

时间:2014-06-27 16:44:26

标签: c# regex

我希望匹配像^\$skip=[0-9]$这样的oData字符串来匹配$skip=3之类的内容并删除它们。我的正则表达可能是错的,但我不知道下一步该尝试什么。我已经尝试了各种各样的事情,比如将它包装在[]中等等。

以下是一个在线示例:http://www.regexr.com/392m2

2 个答案:

答案 0 :(得分:1)

您正在使用^\$skip=[0-9]$。此正则表达式将仅匹配具有该模式的行。该行必须以$skip=N开头和结尾,这就是为什么您的测试无效。

如果您将$ skip = 3与您的单词分开,则可以使用:

\b\$skip=\d+\b

只有您拥有:blabla blab bla $skip=3 bla

时才会匹配

如果您只想删除它,可以使用\$skip=\d+

\$skip=\d+

Regular expression visualization

Debuggex Demo

如果你有blabla blab bla$skip=3bla

,则匹配

答案 1 :(得分:1)

如果您想匹配skip=3,请尝试使用以下正则表达式

(?<=\$).*$

正向lookbehind用于匹配文字$符号旁边的所有字符。

DEMO

OR

您可以使用\K来丢弃之前匹配的字符。

\$\K.*$

DEMO

OR

^\?\$\Kskip=[0-9]$

DEMO