在js中用正则表达式
时间: 2024-01-23 07:14:35 浏览: 91
在JavaScript中,可以使用正则表达式进行字符串的替换操作。下面是两个例子:
1. 替换HTML标签:
```javascript
var str = "<p>Hello, <b>world</b>!</p>";
var newStr = str.replace(/<[^>]*>/g, "");
console.log(newStr); // 输出:Hello, world!
```
2. 替换空格(包括 ):
```javascript
var str = "Hello world!";
var newStr = str.replace(/ |\s/g, "");
console.log(newStr); // 输出:Helloworld!
```
这两个例子分别演示了如何使用正则表达式替换HTML标签和空格。在第一个例子中,使用`/<[^>]*>/g`作为正则表达式,表示匹配尖括号中的任意字符(除了尖括号本身),并且使用`g`标志表示全局匹配。在第二个例子中,使用`/ |\s/g`作为正则表达式,表示匹配` `或者空格,并且使用`g`标志表示全局匹配。
相关问题
js中用正则表达式限定位数
在 JavaScript 中,可以使用正则表达式限定字符串的位数。以下是一些示例:
1. 限定字符串的最小位数和最大位数:
```javascript
var str = "abcdefg";
var regex = /^.{3,6}$/;
console.log(regex.test(str)); // true
str = "ab";
console.log(regex.test(str)); // false
str = "abcdefghi";
console.log(regex.test(str)); // false
```
上述示例中的正则表达式 `^.{3,6}$` 表示字符串的长度必须在 3 到 6 之间(包括 3 和 6)。可以根据需求修改最小位数和最大位数。
2. 限定字符串的固定位数:
```javascript
var str = "12345";
var regex = /^\d{4}$/;
console.log(regex.test(str)); // false
str = "1234";
console.log(regex.test(str)); // true
str = "123456";
console.log(regex.test(str)); // false
```
上述示例中的正则表达式 `^\d{4}$` 表示字符串必须是 4 位数字。可以根据需求修改位数。
3. 限定字符串的任意位数:
```javascript
var str = "abc";
var regex = /^[A-Za-z]{0,}$/;
console.log(regex.test(str)); // true
str = "12345";
console.log(regex.test(str)); // false
str = "abc123";
console.log(regex.test(str)); // false
```
上述示例中的正则表达式 `^[A-Za-z]{0,}$` 表示字符串可以是任意位数的字母。可以根据需求修改字符范围和位数。
这些示例只是一些常见的情况,根据实际需求,可以根据正则表达式的语法和特性进行更灵活的限定。
ES中用正则表达式表示诗句的平仄
ES中可以使用正则表达式来表示诗句的平仄。一般来说,平仄是指汉字的声调,可以分为平声和仄声。在诗歌中,平仄往往是有规律的,比如五言绝句中的平仄规律为“仄平平仄平”,七言绝句中的平仄规律为“平仄仄平平仄仄”。
使用正则表达式来表示诗句的平仄,可以先将每个汉字转换成其对应的拼音,然后根据拼音的声调来判断其平仄。以下是一个示例代码:
```javascript
const pinyin = require('pinyin');
// 五言绝句的平仄规律为“仄平平仄平”
const pattern = /([zcs]|[bpmdtnlgkhjqxr]|[āēīōūǖ]|[áéíóúǘ]|[ǎěǐǒǔǚ]|[àèìòùǜ]){2}([zcs]|[bpmdtnlgkhjqxr]|[āēīōūǖ]|[áéíóúǘ]|[ǎěǐǒǔǚ]){2}([zcs]|[bpmdtnlgkhjqxr]|[āēīōūǖ]|[áéíóúǘ]|[ǎěǐǒǔǚ]){1}/g;
const poem = '床前明月光,疑是地上霜。举头望明月,低头思故乡。';
const pinyinArray = pinyin(poem, {
style: pinyin.STYLE_TONE2,
});
const result = pinyinArray.join('').match(pattern);
console.log(result); // ["chuáng qián", "míng yuè", "guāng", "yí shì", "dì shàng", "shuāng", "jǔ tóu", "wàng", "míng yuè", "dī tóu", "sī", "gù xiāng"]
```
阅读全文