所以我最近继承了一些代码并查看代码,我发现了一个似乎允许任何字符串的正则表达式。正则表达式是:
^(?=\\s*\\S).*$
这是一个将保存到数据库的字段,所以我唯一想到的可能是它做了一些基本的SQL注入保护。思考?从我所知道的,我们正在检查有一个开始\结束行,我们对任何空格或非空格字符都有一个正面的预测,我们允许所有字符。
答案 0 :(得分:3)
^(?=\\s*\\S).*$
这只是说没有empty string
。必须有一个非空格字符。所以' '
之类的字符串也不会通过""
。
这与^.*\S.*$
类似。lookaheads
价格昂贵,因此您可以使用此功能。