【发布时间】:2018-11-13 12:34:07
【问题描述】:
一些信息:
我有一个 Delphi XE 正则表达式:
(?<=[*+\/drt><=≥≤≠])\-
输入字符串:
-(2*3)
RegEx 必须匹配使表达式为负的“-”。比如:
-(2*3) //Must Match
但不是:
2 - 3 //Must not Match
在上面的示例中,运算符作为减号工作,它不会使整个表达式变为负数。
我的解决方案是我上面的正则表达式,它只匹配运算符后的减号。如果减号之前的字符是变量、数字或其他一些已定义的关键字,则不匹配。
我的问题
如果减号在字符串的开头,则正则表达式不匹配,因为前面没有字符,即使该字符使整个表达式为负。我如何匹配这个减号,即使它在字符串的开头并且前面没有字符?
【问题讨论】:
-
很难用正则表达式解析表达式
标签: regex string delphi char match