javascript中通配符搜索的正则表达式

javascript中通配符搜索的正则表达式,javascript,regex,filter,wildcard,Javascript,Regex,Filter,Wildcard,我有一个字符串SEARCH0000123456和SEARCH000096834,我想在下面使用通配符执行搜索* SEARC*2*6-应与SEARCH0000123456匹配 SEARC*9*-应与SEARCH000096834匹配 *123*-应与SEARCH0000123456匹配 *834-应与SEARCH000096834匹配 所以,*是应该匹配任何字符的通配符 在javascript中使用正则表达式可以实现这一点吗 谢谢只需将*替换为。*即可匹配正则表达式中的零个或多个字符。或.+匹配一

我有一个字符串SEARCH0000123456和SEARCH000096834,我想在下面使用通配符执行搜索*

SEARC*2*6-应与SEARCH0000123456匹配 SEARC*9*-应与SEARCH000096834匹配 *123*-应与SEARCH0000123456匹配 *834-应与SEARCH000096834匹配 所以,*是应该匹配任何字符的通配符

在javascript中使用正则表达式可以实现这一点吗

谢谢

只需将*替换为。*即可匹配正则表达式中的零个或多个字符。或.+匹配一个或多个字符。还要添加锚点,因为SEARC*2*6 glob模式只有在以SEARC开头时才会匹配字符串,所以我们需要在这里使用起始锚点^

只需将*替换为。*即可匹配正则表达式中的零个或多个字符。或.+匹配一个或多个字符。还要添加锚点,因为SEARC*2*6 glob模式只有在以SEARC开头时才会匹配字符串,所以我们需要在这里使用起始锚点^


Mozilla很好地介绍了JS正则表达式:

只需使用。*即可匹配0个或更多字符

你可能想要。*?以非贪婪的方式匹配,例如…*?345在“345”的第一个实例处停止,而不是最后一个实例。
`

Mozilla对JS正则表达式有很好的介绍:

只需使用。*即可匹配0个或更多字符

你可能想要。*?以非贪婪的方式匹配,例如…*?345在“345”的第一个实例处停止,而不是最后一个实例。
`

比这要复杂一点。您认为当用户键入SE.ARC*2*6时会发生什么情况?我想应该是^SE\.ARC.*2.*6。是的,很复杂,我知道。但你提出的解决方案并不能满足这一要求。用户不经意地输入在正则表达式中有意义的字符,很容易破坏您的方法。简单地将用户输入中的*to.*替换并不是一个解决方案。它比这稍微复杂一点。您认为当用户键入SE.ARC*2*6时会发生什么情况?我想应该是^SE\.ARC.*2.*6。是的,很复杂,我知道。但你提出的解决方案并不能满足这一要求。用户不经意地输入在正则表达式中有意义的字符,很容易破坏您的方法。简单地将用户输入中的*to.*替换不是解决方案。请阅读有关正则表达式的任何可用教程。在第一页的某个地方,您将学习如何匹配任意字符。请阅读任何有关正则表达式的教程。在第一页的某个地方,您将学习如何匹配任意字符。谢谢@Avinash Raj。您的解决方案解决了我的大部分问题:@Phantom,这两个方案中有一个完全解决了您的问题吗?如果是这样,你会认为标记一个是正确的,或者发布你自己的解决方案来解释他们没有解决的其他情况?谢谢Avias-RaJ。您的解决方案解决了我的大部分问题:@Phantom,这两个方案中有一个完全解决了您的问题吗?如果这样,你会认为标记一个是正确的,或者发布你自己的解决方案来解释他们没有解决的其他情况?
SEARC*2*6   - ^SEARC.*2.*6$
SEARC*9*    - ^SEARC.*9.*
*123*       - .*123.*
*834        - .*834$
SE.ARC*2*6  - ^SE\.ARC.*2.*6$
?E.ARC*2*6  - ^.E\.ARC.*2.*6$