是否可以匹配特定模式但返回不同的任意字符串(不一定包含在测试字符串中)?我希望正则表达式返回任意字符串。
嵌入式 Perl 代码可以,或者只用周围的编程语言处理返回部分。但我很想知道是否可以只使用正则表达式。让我将其表述为(错误的)if 语句模式。
(?(?=test)"true"|"false")
我脑子里没有特定的正则表达式方言,但如果能够使用 C#、PHP、Perl、JavaScript 或 Python 等通用语言来执行此操作,那就太好了。所以,请不要使用专用软件。
我对正则表达式的理解告诉我,你不能返回不存在的东西(如 Jan 所恢复的那样),严格来说,正则表达式模式仅返回真/假结果,说明它是否匹配(如 Borodin 所指出的)。但仍然。
最佳答案
非破坏性/r
modifier如果模式匹配,返回更改后的字符串
my $arb_str = $string =~ s/$pattern/arbitrary-string/r;
关于javascript - 正则表达式匹配模式 x 但返回任意字符串 y,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46752406/