我有两个字符串,例如“ L7-LO”和“%L7-LO”。
如果字符串仅包含“-”,则需要基于此进行一些处理;如果字符串包含这两个字符“-”,则“%”仅需要考虑%,而忽略“-”字符。
为此,我在下面做到了
if (this.selectedSources[formula].Value.indexOf('%') == -1) {
this.formulaType = "percent"
}
else if (this.selectedSources[formula].Value.indexOf('-') == -1) {
this.formulaType = "diff";
}
但是上面的代码不起作用..
能不能让我知道如果有两个字符的情况下如何仅区分一个字符
答案 0 :(得分:1)
如果条件应更改。其余一切都很好-
if (this.selectedSources[formula].Value.indexOf('%') !== -1) {
this.formulaType = "percent"
}
else if (this.selectedSources[formula].Value.indexOf('-') !== -1) {
this.formulaType = "diff";
}
答案 1 :(得分:1)
如果您需要同时测试字符串中的%
和-
,则可以使用RegEx:
const regex = new RegEx(/.*[%]{1}.*[-]{1}/);
this.formulaType = regex.test(this.selectedSources[formula].Value) ? 'percent' : 'diff';
否则,您可以只使用.indexOf('%')
:
this.formulaType = this.selectedSources[formula].Value.indexOf('%') !== -1
? 'percent'
: 'diff';