伙计们,我不知道如何准确地表达正则表达式(我从来没有学过),但是对于我现在所处的情况,我知道这是一个我需要使用的正则表达式。
我需要允许以下操作
$ANYTHNG_HERE$+(5*8-7) //in short a word between dollar sign and any mathematical operator(s)
我需要严格地避免像这样的事情
&ANYTHNG_HERE&+6fdfd(5+6)
我该如何继续?
发布于 2013-12-09 13:53:48
您可以将数学方程式与以下内容进行匹配:
\([0-9*+/-]*\)
您可以将行的开头与以下内容相匹配:
^\$
因此,只需在中间添加一个点,这就是完整的正则表达式:
^\$.*?\([0-9*+/-]*\)
发布于 2013-12-09 14:58:13
不是一个完整的答案,但如下所示:
^\$.*\$\+([\(\)\d*-\\]+)$
将匹配:
$ANYTHNG_HERE$+(5*8\7)
但不是
&ANYTHNG_HERE&+6fdfd(5+6)
如果您需要进一步的修改,请发表意见。
发布于 2013-12-09 13:37:50
那\$.*\$[-+*/()0-9]*$
呢?
请注意:这是sed的正则表达式-我从未使用过C#!
我已经在MSDN上检查过了,它看起来是正确的。
https://stackoverflow.com/questions/20463672
复制相似问题