让我们说一个像这样的字符串:
let string = "one two three four five red five six seven eight nine"
如何返回布尔值(true
或false
),该布尔值告诉用户单词red
是否在两个单词five
之间(在这种情况下,是true
的布尔值,因为red
在两个fives
之间吗?
我在使用此代码的示例
我正在制作一个文本编辑器,用户可以在文本区域中键入代码。
我将返回文本编辑器的值作为变量。我想检查用户是否在两个<script>
标签内输入代码。
这是textarea
的代码:
<textarea class="form-control slideIn" id="input" spellcheck="false" wrap="off" placeholder="Get Creative!"></textarea>
此代码获取textarea
的值:
const code = document.getElementById("input").value;
有帮助吗?
答案 0 :(得分:1)
您可以生成一个简单的正则表达式,例如five(.*)five
通过一些配置,它可能会变成
function isBetween(mystring, between, left, right)
{
// define the regex which will become : "/five(.*)five/g"
const regex = new RegExp( left + ' (.*) ' + right, 'g');
// execute the regex
const m = regex.exec(mystring);
// if there is a result and the (.*) pattern matched sthg
// then check if its equel to red
return m && m[1] ? (m[1] === between) : false;
}
isBetween("one two three four five red five six seven eight nine", "red", "five", "five");