【发布时间】:2021-06-03 06:48:01
【问题描述】:
假设我正在寻找带有换行符的字符串中的特定数字: 1\n2\n4\n5\n7\n8\n9\n12\n13
Lookahead 和lookbehind 与以下内容完美配合:
(?<![0-9])12(?![0-9])
但是,我需要一个针对 MySQL REGEXP 的解决方法,因为它不支持带有lookarounds 的模式。
【问题讨论】:
-
什么是 MySQL 版本?您确定
\n不是字符串中的换行符吗? -
实际上 \n 是 Joomla RSForm 中复选框组中不同选择的结果! Pro 形式并导致 sql 字段值中的换行符。 MySQL 版本 5.7.31
-
我的查询 (Joomla) 是 for($i=0;$isetQuery("SELECT (SELECT COUNT(*) FROM #__rsform_submission_values WHERE
FormId= '".JRequest::getInt('formId')."' ANDFieldName= 'plages' ANDFieldValueREGEXP '".($i+1)."[[:>:]]')" ); ..... -
但是 REGEXP 不能得到像 1\n12 这样的结果....寻找 2 将捕获 2 of 12
-
对不起,我的意思是
(^|[^0-9])12($|[^0-9])。