我在rails应用程序中有一个正则表达式/(.+)_id$/
,它匹配任何以_id
结尾的字符串。我需要它来匹配除_id
之外以associated_id
结尾的任何字符串。我怎么能做到这一点?
thx:)
-C
答案 0 :(得分:7)
/(.+)(?<!associated)_id$/
将使用负面的lookbehind来确保(.+)
匹配的内容不会以associated
结尾。
对于不支持lookbehind的语言,您可以使用:
/\A(?!.*associated_id$)(.+)_id$/
这将断言不可能将以associated_id
结尾的字符串与字符串的起始位置匹配。
答案 1 :(得分:0)
我不是“regexpert”,所以我确信这可能有更好的方法,但我想出了
/(.+[^associated_id].+)_id$/