【发布时间】:2019-05-03 09:02:05
【问题描述】:
我正在创建一个模板系统,它允许用户创建模板并使用原始字符串中的选定/动态值。
例子:
Original string:
Lorem ipsum dolor (Hello world) sit YEAH amet
Template:
consectetur adipiscing elit, sed do @BETWEEN("dolor (",") sit") eiusmod tempor incididunt ut labore et dolore @BEWTEEN("sit","amet")
Output:
consectetur adipiscing elit, sed do Hello world eiusmod tempor incididunt ut labore et dolore YEAH
我正在尝试使用正则表达式从模板中获取@BETWEEN
@BETWEEN\([^\(\)]+\)
但由于@BETWEEN 括号中的括号符号,它不起作用。 我不太擅长正则表达式。谁能给我关于如何增强正则表达式或任何其他方法以从模板中获取 @BETWEEN 函数的建议
【问题讨论】:
-
避免使用正则表达式处理嵌套内容。
-
根据您的模板,不应发生替换,因为原始字符串中
dolor (和) sit之间没有值 -
是的,这个例子好像错了。
-
@thehennyy 你没有义务在字符类
[]中转义 -
很抱歉忘记了示例中的转义特殊字符。但即使逃脱了特殊字符,它仍然无法正常工作。