我想在某些单词中选择并用空格(“”)替换破折号/连字符(“-”)(例如:“start-down”更改为“start down”),同时忽略其他单词的替换(例如: “启动”保持“启动”)使用 PHP 的 preg_replace()。
这是我想出的正则表达式:
(?<!(start))-(?!(up))|(?<!(start))-|-(?!(up))
在此数据上使用上述正则表达式:
- 启动
- 开始
- 万事如意
- 停下
- 开始
- 停顿
返回以下内容:
- 启动
- 开始
- 有什么事
- 停下
- 开始
- 堵
它非常适合启动。但我知道以后我需要在列表中添加其他例外情况,例如停止(例如:“停止”保持“停止”)。
所以问题是这样的:我是否应该通过 PHP 的函数(例如 str_replace() 和 if else/switch case 使用一组“不可更改的”单词)来执行此操作,循环遍历这些并在必要时进行适当的更改,或者是否有正则表达式中的方法如果选择是某个单词的一部分,则忽略某些选择?