Javascript: indexOf 正则表达式

Javascript: indexOf with Regular Expression

如何检查页面 url 是否包含“#”字符 加上一些随机数字

e.g. www.google.de/#1234

if( window.location.href.indexOf('#') > 0 ){
  alert('true');
}

indexOf 支持正则表达式吗?

使用String.prototype.search获取正则表达式的索引:

'https://example.com/#1234'.search(/#\d+$/); // 20

RegExp.prototype.test如果用于布尔检查:

/#\d+$/.test('https://example.com/#1234'); // true

用于这些示例的正则表达式是 /#\d+$/,它将匹配文字 # 后跟字符串末尾的 1 个或多个数字。

正如评论中指出的,您可能只想查看 location.hash:

/^#\d+$/.test(location.hash);

/^#\d+$/ 将匹配包含 1 个或多个数字且没有其他任何内容的散列。