javascript - 正则表达式获取非字母之前的字符串

标签 javascript regex

参见示例:'foo.bar',预期为:'foo'

从其他问题来看,如果 Angular 色已知,解决方案是:

console.log('foo.bar'.replace(/\..*/, ''))

如果特殊字符(不是字母的任何字符)未知,似乎很明显将 \. 替换为 [^A-Z],但事实并非如此似乎有效:

console.log('foo.bar'.replace(/\/[^A-Z].*/, ''))

所以问题是,用什么来代替 \. 来匹配所有非字母的内容,而不仅仅是检查点?

最佳答案

我认为,你可以使用

^\w+

其中包括字符串的开头 (^) 和单词字符 ([A-Za-z0-9_])。< br/> 在 JavaScript 中,这将是

let strings = ['foo.bar', 'test test test', 'fo!bar', '!word!'];
strings.forEach(string => console.log(string.match(/^\w+/)));

关于javascript - 正则表达式获取非字母之前的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62371185/

相关文章:

javascript - 如何在文本框中设置值 - asp.net 使用 jquery?

javascript - Select2JS - 我的列表中有一个默认值

c# - 正则表达式限制电子邮件地址开头的特殊字符

javascript - 在最后一个斜杠后剪切子字符串?

javascript - 通过 javascript 在文本字段中显示货币格式

javascript - 将数组放入此格式名称 :url

javascript - 正则表达式匹配所有 Vular 分数

c++ - 如何使用正则表达式提取字符串的不匹配部分

regex - htaccess 如何将子目录重定向到外部 URL

Java,正则表达式 : Replace fields in Json by field key