RegExp用于过滤最后一个点之后的字符
RegExp to filter characters after the last dot
例如,我有一个字符串"esolri.gbn43sh "。earbnf",我想删除最后一个点之后的每个字符(即。"esolri.gbn43sh")。我如何用正则表达式做到这一点?
我当然可以用非regexp的方式来做,例如:
" esolri.gbn43sh.earbnf " .slice("esolri.gbn43sh.earbnf .lastIndexOf("。")+ 1);
但是我想要一个正则表达式。
我尝试了/'..*?/
,但删除了第一个点。
我正在使用Javascript。
我将使用标准js而不是正则表达式,因为它将更容易让别人理解你的代码
var str = 'esolri.gbn43sh.earbnf'
console.log(
str.slice(str.lastIndexOf('.') + 1)
)
模式匹配
匹配点后面跟着非点,直到字符串
结束let re = /'.[^.]*$/;
将此与String.prototype.replace
一起使用以获得所需的输出
'foo.bar.baz'.replace(re, ''); // 'foo.bar'
其他选择您可能会发现对最后一个.
进行简单的子字符串搜索,然后对该索引使用字符串切片方法更有效。
let str = 'foo.bar.baz',
i = str.lastIndexOf('.');
if (i !== -1) // i = -1 means no match
str = str.slice(0, i); // "foo.bar"
相关文章:
- 匹配点之后的任何字符,直到下一个点或行尾
- 如果字段在几行空行之后包含前几个字符,则验证描述字段长度
- 打印regex之后的最后一个字符
- regex某个字符可以存在也可以不存在,但之后什么都没有
- 删除字符串中第5个字符之后的所有字符
- 查找上一个<p>在第n个字符之后
- 按键时的Javascript事件,但在输入字符之后
- 任何匹配模式的方法,要么在某个字符之前,要么在某个字符之后
- 最后一个斜杠 JavaScript RegEx 之后的所有字符
- Qualtrics:在矩阵表中的文本框之前/之后添加不同的字符
- Reg ex 表示特定字符之后和其他字符之间的任何内容
- 如何在字符串中的第二个字符之后插入字符
- 在 n 个字符之后剪一个字符串,但如果它在一个单词的中间,则剪掉整个单词
- 字符、符号或数字之前或之后的空格;但是,不介于两者之间
- Javascript 在最后一个斜杠 / 之后替换 href 的某些字符
- 在某个索引之后查找字符的索引
- 删除第四个空格之后的字符串的所有字符
- 阅读更多按钮 类别描述 在某些关于字符之后
- 删除多个字符之一的第一个实例之后的所有内容
- 如何在文本的每 5,000 个字符之后的第一个
或
之后插入一个