JavaScript中如何将869935_0_image_ref_1分割为869935_0_image_ref和_1
时间: 2023-09-06 13:11:00 浏览: 75
gulp-cmsref:Gulp 插件用 FirstSpirit CMS_REF 标签替换 CSS 文件中的所有媒体出现
可以使用正则表达式来实现这个分割过程。具体方法如下:
```javascript
const str = '869935_0_image_ref_1';
const matchArr = str.match(/^(.+?)_(\d+)$/);
const prefix = matchArr[1]; // '869935_0_image_ref'
const suffix = '_' + matchArr[2]; // '_1'
```
这里使用了一个正则表达式 `/^(.+?)_(\d+)$/`,它的含义是:
- `^` 表示匹配字符串的开头
- `(.+?)` 表示匹配任意字符(除了换行符)至少一次,但尽可能少地匹配,以后面的 `_` 为止,这里使用了非贪婪模式(`?`)
- `_` 表示匹配下划线
- `(\d+)` 表示匹配数字至少一次
- `$` 表示匹配字符串的结尾
`matchArr` 数组的第一个元素是整个匹配结果,第二个元素是第一个括号内匹配的结果,第三个元素是第二个括号内匹配的结果。所以 `prefix` 就是第一个括号内匹配的结果,即 `869935_0_image_ref`,`suffix` 就是 `_` 加上第二个括号内匹配的结果,即 `_1`。
阅读全文