我需要一个正则表达式来查找以下场景的 (Anand's & boy's) 中的单引号,
'This has to be Anand's first task', 'A boy's friend works in France'
考虑我有很多字段要插入到数据库中,就像我在上面的示例中显示的那样。
我对文本中有单引号的查询有错误。我需要找到它们并用 '' 两个单引号替换以解决此问题。
您能帮我为此目的编写正则表达式吗?因为我对正则表达式没有太多了解。
我需要一个正则表达式来查找以下场景的 (Anand's & boy's) 中的单引号,
'This has to be Anand's first task', 'A boy's friend works in France'
考虑我有很多字段要插入到数据库中,就像我在上面的示例中显示的那样。
我对文本中有单引号的查询有错误。我需要找到它们并用 '' 两个单引号替换以解决此问题。
您能帮我为此目的编写正则表达式吗?因为我对正则表达式没有太多了解。
您应该首先研究如何确保不会在输入中得到这些明显不正确的引号。但如果你不能,你有机会找到不带逗号(或字符串结尾)且前面不带逗号(或字符串开头)的引号:
String resultString = subjectString.replaceAll("(?<!^|, ?)'(?!,|$)", "''");
如果这是 JDBC 场景,请尝试使用Prepared Statements。这是一种比修改原始数据更好的方法,并且额外的好处是可以保护您免受 SQL 注入攻击。
String.split(",")
使用分隔符 "," ( )分割文本String.trim()
)String.subsequence()
)String.replace()
)