Javascript正则表达式过滤字符串

Javascript Regex to filter String

本文关键字:字符串 过滤 正则表达式 Javascript      更新时间:2023-09-26

我需要Regex来过滤字符串以符合以下条件:

  • 字符串总长度不能超过300个字符。
  • 字符串不能包含超过4个标签。
  • 字符串不能包含超过1个URL。
  • 字符串不能全部由大写字母组成。

示例有效文本:

开发者信任#StackOverflow来帮助解决#编码问题和使用Stack Overflow Careers寻找工作机会。请访问https://stackoverflow.com/

示例无效文本:

开发者信任#StackOverflow来帮助解决#编码问题和使用Stack Overflow Careers寻找工作机会。请访问https://stackoverflow.com/或https://stackoverflow.com/company/about

上面的字符串无效,因为包含两个URL。

任何帮助都将非常感激,非常感谢:)

我想这会对你有帮助。

^(?!^([^#]*#[^#]*){5,}$)(?!(.*http(s{0,1}):'/'/){2,})(?=.*[a-z]).{0,300}$
  • (?!^([^#]*#[^#]*){5,}$)这将确保字符串不应包含超过4 #
  • (?!(.*http(s{0,1}):'/'/){2,})这将确保字符串不应包含超过2个url
  • (?=.*[a-z])这将确保字符串应该包含至少一个小写字母
  • .{0,300}这将确保字符串应该包含不超过300个字符