使用还是不使用正则表达式?

2023-12-09

我刚刚问了这个question关于使用正则表达式允许 -90.0 和 +90.0 之间的数字。我得到了一些关于如何实现正则表达式的答案,但大多数答案还提到,不使用正则表达式会更好地处理,或者使用正则表达式会太过分。那么如何决定何时使用正则表达式以及何时不使用正则表达式。有可以遵循的检查清单吗?


正则表达式是一个文本处理工具用于基于字符的测试。更正式地说,正则表达式擅长处理常规语言,但几乎不擅长处理其他任何事情。

实际上,这意味着正则表达式不太适合需要发现的任务meaning (语义学)超出字符级别的文本。这需要一个成熟的解析器。

在您的特定情况下:识别文本中的数字是正则表达式的练习goodat(可以使用常规语言简单地描述十进制数)。这适用于角色级别。

但是用数字做更高级的事情需要了解其数值value(即它的语义)需要解释。正则表达式在这方面表现不佳。因此在文本中查找数字很容易。在文本中查找大于 11 但小于 1004(或能被 3 整除)的数字很困难:它需要识别meaning的号码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用还是不使用正则表达式? 的相关文章

随机推荐