替换特殊字符,如Ôûîâ
Replace special characters like Ôûîâ
我今天遇到了一个非常奇怪的问题。我正在 Firebird 数据库下创建一个带有 Laravel 的应用程序,因此不要在查询中插入非法字符串或字符非常重要。昨天我收到了关于这种异常的错误报告,所以我检查了代码可能是什么问题。现在我使用以下正则表达式创建了一个验证规则:
regex:/[a-zA-Z0-9\.\-\,üÜóÓöőŐúÚűŰáÁiÍûé]+/
实际上效果很好,但我注意到如果用户插入这样的字符:
Ôûîâ
会抛出上面的异常。对于我使用 TextAnguar 的文本编辑器,有什么方法可以防止这些类型的输入被保存或替换为标准字符? (如 üöőú,匈牙利字母)
感谢您的回答!
最良好的祝愿,
Gábor Magyar
您可以将这些字符添加到字符 class
regex:/[-a-zA-Z0-9.,üÜóÓöőŐúÚűŰáÁiÍûéÔûîâ]+/
^^^^
请注意,字符 class 开头(或结尾)处的 -
无需转义即可表示文字连字符。 ,
和 .
不必在字符 class.
内转义
我今天遇到了一个非常奇怪的问题。我正在 Firebird 数据库下创建一个带有 Laravel 的应用程序,因此不要在查询中插入非法字符串或字符非常重要。昨天我收到了关于这种异常的错误报告,所以我检查了代码可能是什么问题。现在我使用以下正则表达式创建了一个验证规则:
regex:/[a-zA-Z0-9\.\-\,üÜóÓöőŐúÚűŰáÁiÍûé]+/
实际上效果很好,但我注意到如果用户插入这样的字符:
Ôûîâ
会抛出上面的异常。对于我使用 TextAnguar 的文本编辑器,有什么方法可以防止这些类型的输入被保存或替换为标准字符? (如 üöőú,匈牙利字母)
感谢您的回答!
最良好的祝愿, Gábor Magyar
您可以将这些字符添加到字符 class
regex:/[-a-zA-Z0-9.,üÜóÓöőŐúÚűŰáÁiÍûéÔûîâ]+/
^^^^
请注意,字符 class 开头(或结尾)处的 -
无需转义即可表示文字连字符。 ,
和 .
不必在字符 class.