php - preg_match 与多行无法正常工作
问题描述
我有以下代码:
$data = "numbers{One
Two
Three}";
preg_match("~(?<=numbers{)(.*?)(?=})~", $data, $result);
echo $result[0];
preg_match 不起作用我不知道为什么如果数据只是一行那么它就起作用了
解决方案
所有正则表达式引擎都支持许多搜索修饰符,例如不区分大小写的搜索或 multiLineSourse,请尝试“m”修饰符
preg_match("~(?<=numbers{)(.*?)(?=})~ms", $data, $result);
推荐阅读
- python - 如何以简单的方式验证和分配我的输出
- javascript - 为什么尽管发送所有数据都正确,但仍收到此错误代码 500?
- spring - 来自 Ionic 的 Spring Security LDAP 身份验证
- android - 如何检查是否是第一次启动应用程序?
- laravel - Laravel 安装在子文件夹和 Horizon 中不起作用
- python - 如何解决 AssertionError 以使用运行长度编码将字符串字符转换为字节?
- python - 使用 Tkinter 时,NoneType 对象在 Python 中没有属性“销毁”错误
- c# - Lock 和 Mutex 显示不同的结果
- java - ExecutorService 和 Future 正在阻塞主线程
- ios - 使用 Audiokit v5 实现麦克风分析