我需要帮助。
我有PostgreSQL regexp_replace模式,例如:
regexp_replace(lower(institution_title),'[[:cntrl:]]|[[[:digit:]]|[[:punct:]]|[[:blank:]]|[[:space:]|„|“|“|”"]','','g')
我需要PHP语言中的这一替代方法
因为一半来自postgress db,而且我还必须比较来自php的字符串。
您可以将相同的POSIX字符类与PHP PCRE regex一起使用:
preg_replace('/[[:cntrl:][:digit:][:punct:][:blank:][:space:]„““”"]+/', '', strtolower($institution_title))
观看演示
此外,PCRE中还有Unicode类别类。因此,您也可以尝试
preg_replace('/[\p{Cc}\d\p{P}\s„““”"]+/u', '', mb_strtolower($institution_title, 'UTF-8'))
其中\p{Cc}
代表控制字符,\d
数字,\p{P}
标点和\s
空白。
我也添加了/u
修饰符来处理Unicode字符串。
观看正则表达式演示
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句