在JavaScript中添加到str.match()的额外字符
Extra characters added to str.match() in JavaScript
执行…时
var URLPattern = '^(ht|f)tp(s?)':'/'/[0-9a-zA-Z]([-.'w]*[0-9a-zA-Z])*(:(0-9)*)*('/?)([a-zA-Z0-9'-'.'?','''/'''+&%'$#_]*)?';
alert(str.match(URLPattern));
它将正确匹配URL,但随后会附加
,ht,,m,,,,
到url 的末尾
我能做些什么来解决这个问题?
查看.match
返回的内容:一个由匹配和匹配的捕获组组成的数组。
使用
var result = str.match(URLPattern);
alert(result != null ? result[0] : "nothing found");
顺便说一句,您的正则表达式构造不正确。使用正则表达式文字,而不是吃反斜杠的字符串文字:
var URLPattern = /^(ht|f)tp(s?)':'/'/[0-9a-zA-Z]([-.'w]*[0-9a-zA-Z])*(:(0-9)*)*('/?)([a-zA-Z0-9'-'.'?','''/'''+&%'$#_]*)?/;
相关文章:
- 在JavaScript中输出转义字符
- 不同浏览器中的空白字符正则表达式行为
- Regex匹配除“”之外的所有字符;.js”;
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 使用RegExp查找url中的字符
- 如何为jQuery屏蔽输入插件创建一个允许字母数字、空格和重音字符的掩码
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 允许在文本框中使用某些字符
- 根据页面的位置突出显示文本中的字符
- 元素的内容必须由格式正确的字符数据或标记组成
- 如何将字符串拆分为字符,但在javascript中保留空格
- 使用Google Maps API向标记添加多个字符
- 处理JSON字符串会导致JavaScript错误
- 单元格的工具提示或标题不显示超过2000个字符
- javascript替换换行符和特殊字符
- angularjs删除动态形式元素中的特殊字符
- 如何使用match返回字符串中的字符
- 如何将 match() 用于字符白名单
- 在JavaScript中添加到str.match()的额外字符
- 密码.Match不能处理特殊字符