Javascript - 搜索字符串中使用的特定字符

标签 javascript regex

我正在尝试创建一个程序,允许我在数据库中输入特定命令的简写名称,如下所示:

ID I(20) AI NN PK, name VC(255), story T

然后我有一张 map ,其中这些内容基于:

    var keys = {
        'PK' : 'PRIMARY KEY',
        'FK' : 'FOREIGN KEY'
    };

    var options = {
        'AI' : 'AUTO_INCREMENT',
        'NN' : 'NOT NULL',
        'D' : 'DEFAULT',
        'CT' : 'CURRENT_TIMESTAMP'
    };

我遇到的问题是搜索字符串中存在的简写名称,然后将其替换为 map 中的值。

我能想到的唯一解决方案是使用正则表达式来查找字符串。

我目前有这个正则表达式:

(\bI\b|\bAI\b|\bPK\b|\bVC\b|\bT\b|\bNN\b)

这是唯一的出路吗?上面的正则表达式还可以改进吗?

最佳答案

您可以将单词边界移出交替

\b(I|AI|PK|VC|T|NN)\b

关于Javascript - 搜索字符串中使用的特定字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12948786/

相关文章:

javascript - 使用 Javascript 将数据存储在大型数组中时的性能问题

javascript - Google DoubleClick for Publishers 失败得太悄无声息

java - 如何替换文件名中的非法字符?

javascript - 发布后 div 中不显示任何内容

javascript - SyntaxError : react-table/src/publicUtils. js:当前未启用对实验语法 'jsx' 的支持

javascript - Do/While 循环结合 setTimeout 创建无限循环

javascript 当字符连续出现时替换每个出现的字符

regex - 如何在词法分析器生成器中有效地实现最长匹配?

php - 固定字符串的正则表达式

python - 在数据帧上迭代 re.split()