inputPattern: /^[\s\S]*.*[^\s][\s\S]*$/ 什么意思
时间: 2023-08-29 13:11:16 浏览: 160
这个正则表达式是用来判断输入是否为空或空格的。具体含义如下:
- `^` 表示匹配输入字符串的开始位置。
- `[\s\S]*` 表示匹配任意数量的空白字符或非空白字符。
- `.*` 表示匹配任意数量的字符。
- `[^\s]` 表示匹配一个非空白字符。
- `[\s\S]*` 表示匹配任意数量的空白字符或非空白字符。
- `$` 表示匹配输入字符串的结束位置。
因此,这个正则表达式可以匹配任意数量的空白字符或非空白字符,但必须包含至少一个非空白字符。换句话说,输入不能为空或只包含空格。
相关问题
vue3 使用 this.$prompt
Vue3中使用`this.$prompt`需要先引入`ElMessageBox`组件,然后在组件中使用`this.$prompt`方法。该方法可以弹出一个带有输入框的提示框,用户可以在输入框中输入内容,然后点击确定或取消按钮。具体用法如下:
```
import { ElMessageBox } from 'element-plus';
ElMessageBox.prompt('请输入内容', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
inputPattern: /\S/,
inputErrorMessage: '内容不能为空',
inputValidator: (value) => {
if (!value) {
return '内容不能为空';
}
},
}).then(({ value }) => {
console.log('输入框的值', value);
}).catch(() => {
console.log('取消');
});
```
其中,第一个参数为提示框中显示的文本内容,第二个参数为提示框的标题,第三个参数为配置项,可以设置确定和取消按钮的文本、输入框的验证规则等。`then`方法中的回调函数会在用户点击确定按钮后执行,可以获取用户在输入框中输入的内容。`catch`方法中的回调函数会在用户点击取消按钮后执行。
messageBox弹框 用inputPattern字段自己规定匹配模式 要求不可以包含空格与中文,但必须包含数字、字母、特殊符号,且不可小于6位或者大于20位
你可以在使用 `messageBox` 弹框时,通过 `inputPattern` 属性来指定输入框的匹配模式。下面是一个示例代码,可以实现你的要求:
```javascript
this.$msgbox({
title: '请输入密码',
inputType: 'password',
inputPattern: /^(?![\u4e00-\u9fa5\s]+$)(?=.*[A-Za-z])(?=.*\d)(?=.*[~!@#$%^&*()_+{}:"<>?\`\-=[\]\\;',./]).{6,20}$/,
inputErrorMessage: '密码格式不正确',
showCancelButton: true,
confirmButtonText: '确定',
cancelButtonText: '取消'
}).then(val => {
console.log('输入的密码为:', val);
}).catch(() => {
console.log('取消输入');
});
```
在这段代码中,`inputPattern` 的值就是我们之前给出的正则表达式。当用户输入的内容不符合要求时,会弹出一个错误提示框,提示信息为 `inputErrorMessage` 指定的值。当用户点击确定按钮时,会执行 `then` 回调函数,回调函数的参数即为用户输入的内容;当用户点击取消按钮时,会执行 `catch` 回调函数。
阅读全文