我正在制作一个正则表达式来匹配列 = 'value'中的所有值,主要是在 sql 的 where 子句中,值可以是从字母数字到特殊字符、空格、'、= 等。这是我到目前为止所拥有的。
SQL:
select count(*) from t_cusUser where AccountID = '
!@#$%^&()+{}?|.'_' and column = '3' and column = '
~!@#$%^&-_+{}|'./?Polite'
正则表达式:
(?<=\=)\s?N?\'([\w\'-\s\&{}#\$\^()\@\~\%\|/.`*\~!+ \?"]+)\'
结果:
- '`!@#$%^&()+{}?|.'_'
- '3'
- '`~!@#$%^&-_+{}|'./?礼貌'
它工作正常,但如果我放一个=字符,就会出现问题。
正则表达式:(添加 = 字符)
(?<=\=)\s?N?\'([\w\'-\s\&{}#\$\^()\@\~\%\|/.`*\~!+ \?" = ]+)\'
结果:
- '
!@#$%^&*()+{}?|.'_' and column = '3' and column = '
~!@#$%^&*-_+{}|'./?礼貌'