我的 Angular 6 应用程序有一个搜索输入框,通过提供以下格式之一作为输入来帮助搜索目录中的人员:
案例1:"单词单词"-空间是物质,将字符串视为"第一个最后一个">
案例 2:"单词,单词" - 将字符串视为"最后一个,第一个">
案例 3:"单词" - 将字符串视为"最后一个">
上述案例将被视为触发要发送的 API 查询的成功案例。我做了一些研究,我无法为此构建自定义角度管道,因为管道用于显示数据,而不是接收数据。所以我只打算构建一个将测试字符串的解析函数。
我现在对案例 1 和案例 3 的方法相互重叠。
transformInput(inputValue) {
const case1 = /(([A-Za-z])+(s)+[A-Za-z]*)/;
const case2 = //NOT SURE;
const case3 = /(^([A-Za-z]*)+s)/;
if (case1.test(inputValue) {
console.log('case1')
} else if (case2.test(inputValue)) {
console.log('case2')
} else if...
}
这应该有效:w+,?s?w*
如果你想更具体,你可以使用[a-zA-Z]
而不是w
演示