![](/img/trans.png)
[英]How to match 0 and an empty string, but not 0 and undefined, and not 0 and null, in JavaScript?
[英]Javascript Regex constructor to match string, and ignore null, undefined, or empty strings
我正在尝试添加正则表达式以仅匹配非空值。 我在下面尝试的操作会破坏应用程序,因为数据库中有一些未定义的names
、 ages
和genders
以及 null。 我试图找到一个正则表达式,它将忽略数据库中的 null、未定义或空值,并且只匹配存在的值。
我了解^(?.\s*$).+
将匹配任何包含至少一个非空格字符的字符串。 但我正在努力解决如何将它添加到action.payload
(我匹配的字符串)。
case FILTER_USERS:
return {
...state,
user_info: state.userArr.filter(user => {
const regex = new RegExp(`${action.payload}`, "gi");
return (
user.name.match(regex)
|| user.age.match(regex)
|| user.gender.match(regex)
);
})
};
我知道这是非常不正确的,但这就是我尝试过的: const regex = new RegExp(`(^?)${action.payload}(.\s*$),+)`; "gi");
const regex = new RegExp(`(^?)${action.payload}(.\s*$),+)`; "gi");
任何帮助将不胜感激 - 谢谢!
将(?=^[^\s]$)
放在正则表达式前面将断言匹配中至少有一个非空白字符。
如果您已经在检查以确保字符串不仅是空格,那么为什么不使用if(${action.payload})
代替呢? 这将检测空字符串和null 字符串,因为它们都是假的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.