regex - 为什么使用 (.|\n)*?是个坏主意吗?
问题描述
有几次我看到正则表达式专家说使用(.|\n)*?
是一个非常非常糟糕的主意。
好吧,我确实明白最好将其替换为.*
并使用/s
标志。但有时这些标志不可用,例如,在文本编辑器或其他正则表达式功能有限的软件中使用正则表达式时。因此,使用类似的东西(.|\n)*?
可能是多行匹配的唯一选择。
那么,总是避免 (.|\n)*?
的原因是什么?
解决方案
推荐阅读
- javascript - 我正在努力传递一个 url 变量以用作动态生成的嵌入的变量
- oracle - Liquibase 使用 Oracle 注释表示法返回 ORA-00907 和 SQL(双破折号)
- python - 将 pandas df 与堆叠级别值归一化
- apache-flink - 在 Apache Flink 中使用 State 有限制吗?
- kdb - 如何将字符串连接到字符串列表
- javascript - Graphql - 尝试为字段创建对对象的引用时出错
- python - 性能:Python 列表与 Numpy ndarrays
- oracle - 在 oracle 12c 中将查询的输出转换为 json
- charles-proxy - 我可以使用 Charles Proxy 镜像请求数据吗?
- esp32 - 如何更改 ESP32 的 UART-TX-FIFO 的大小