IF 函数中的 JavaScript 通配符
Javascript wildcard in IF Function
我有一个字段,其中包含以下选项
United Kingdom EEA
France EEA
India Non EEA
China Non EEA
如何执行if
语句来检查字段是否包含EEA
或Non EEA
。我在示例代码中使用了==
,我知道它甚至不接近,我只是想让它清楚。
据我所知,我不能使用substring
,因为length
总是会因国家/地区而异,并且基本的通配符仍然会拉回EEA
和Non EEA
的结果。
function DisplayCorrectSections() {
var SectionSelection = GetFieldValue("Nationality");
if (SectionSelection == "EEA" ) {
EnableRtwDocs();
DisableVisaInformation();
DisableValidVisaPanel();
}
if (SectionSelection == "Non EEA") {
DisableRtwDocs();
EnableVisaInformation();
EnableValidVisaPanel();
}
}
您可以使用 indexOf
,但必须先检查Non EEA
,否则它也会在Non EEA
字符串中找到EEA
:
if (SectionSelection.indexOf("Non EEA") > -1) {
//contains "Non EEA"
} else if (SectionSelection.indexOf("EEA") > -1) {
//contains "EEA"
} else {
//contains neither
}
> 从@James那里得到很好的答案,你也可以使用正则表达式来做到这一点,这也将测试以确保文本在值的末尾
var matches = SectionSelection.match(/(non )?eea$/i);
if (matches != null) {
if (matches[1] != "") {
//contains "Non EEA"
} else {
//contains "EEA"
}
} else {
//contains neither
}
匹配的细分是这样的...
-
(non )?
检测字母non
是否存在 -
eea
直接匹配字母 -
$
与行尾匹配
如果eea
之前有non
,那么match[1]
就会有non
。
末尾的i
表示它不区分大小写,因此它将匹配eea
、EEA
、EEa
等。
相关文章:
- JavaScript中的通配符日期形式
- JavaScript上的通配符(也许这不费吹灰之力?)
- javascript中通配符搜索的正则表达式
- Javascript-IF语句中的通配符
- 函数调用中的javascript通配符
- Javascript:通配符正则表达式搜索
- Javascript/Jquery.使用带通配符的正则表达式将纯文本替换为html
- 将通配符与javascript拆分函数结合使用
- 使用javascript's替换为通配符以更改字符串中的width属性
- 通配符 - 许多JavaScript
- 正则表达式替换为多个通配符在 PHP 中工作,而不是在 JavaScript 中
- Javascript “document.getElementById” 通配符循环
- 带字符串的正则表达式包含Javascript中带通配符/最小值、最大长度的数字
- Javascript通配符regex搜索结果不一致
- Javascript通配符变量
- Javascript通配符替换函数
- Javascript通配符与Express
- 如何使用jquery/javascript通配符查找图像
- immacro JAVASCRIPT通配符VAR简单的IF
- IF 函数中的 JavaScript 通配符