用js的正则截取{"370ml": "370ml"} 这个里面 :后面的370ml
时间: 2023-09-08 15:08:19 浏览: 201
可以使用正则表达式来截取:
```javascript
const str = '{"370ml": "370ml"}';
const match = str.match(/:(\w+)/);
const result = match ? match[1] : '';
console.log(result); // 输出:370ml
```
这里使用了正则表达式 `/:(\w+)/`,其中 `:` 表示匹配冒号,`\w+` 表示匹配一个或多个字母、数字或下划线。`match` 方法返回一个数组,其中第一个元素是匹配的子串,后面的元素是匹配的分组,即括号中的内容。因此,我们可以通过 `match[1]` 来获取分组中的内容,即冒号后面的字符串。如果没有匹配到,则返回空字符串。
相关问题
{"370ml": "370ml"}如何用js正则截取 : 这个字符后面的370ml
可以使用正则表达式中的正向预查来实现:
```javascript
const str = '{"370ml": "370ml"}';
const match = str.match(/(?<="370ml":\s*")[^"]+/);
console.log(match[0]); // 输出 370ml
```
在上述代码中,正则表达式 `/(?<="370ml":\s*")[^"]+/` 匹配了 `"370ml":` 后面的空格以及双引号之间的所有字符。其中 `(?<="370ml":\s*")` 是一个正向预查,表示要匹配的字符串必须以 `"370ml":` 后面的空格和双引号开头。`[^"]+` 表示匹配除双引号以外的任意字符,直到遇到双引号为止。最后通过 `match[0]` 获取匹配结果。
{"370ml": "370ml"}如何用正则截取 : 这个字符后面的数值
可以使用正则表达式 `\d+` 来匹配任意长度的数字,然后使用正则表达式的查找函数来提取字符串中符合条件的部分。以下是一个Python示例代码:
```python
import re
s = '{"370ml": "370ml"}'
match = re.search(r'\d+', s[s.find(':')+1:])
if match:
print(match.group(0))
```
这段代码首先使用 `s.find(':')` 找到字符串中第一个 `:` 的位置,然后取该位置之后的子串 `s[s.find(':')+1:]`,即 ` " 370ml"}'`。然后对这个子串应用正则表达式 `\d+` 进行查找,返回第一个匹配的结果,即 `"370"`。
阅读全文