相关疑难解决方法(0)

使用javascript在循环中提取单独字母的正则表达式

我正在编写一个脚本来为在线作者识别创建指标.我在文献中遇到的一件事就是计算每个字母的频率(多少个字母,多少个字母等),与大小写无关.因为我不想为每个字母创建一个单独的语句,所以我试图循环这个东西,但我无法弄明白.我能想到的最好的是将ASCII字母代码转换为十六进制,然后......希望奇迹发生.

到目前为止,我已经有了

element = id.toLowerCase();
var hex = 0;
for (k=97; k<122; k++){
    hex = k.toString(16); //gets me to hex
    letter = element.replace(/[^\hex]/g, "")//remove everything but the current letter I'm looking for
    return letter.length // the length of the resulting string is how many times the ltter came up
}   
Run Code Online (Sandbox Code Playgroud)

但是当然,当我这样做时,它会将十六进制解释为字母十六进制,而不是我想要的字母的十六进制代码.

javascript regex

2
推荐指数
1
解决办法
109
查看次数

在咖啡脚本/ javascript中的正则表达式中转义字符串中的“ +”加号

我有一个正则表达式,我正在运行以过滤表中的行。过滤是用Javascript完成的。

我正在编写coffeescript,但是可以使用Javascript解决方案-我可以自己将其翻译为coffeescript。

我有一个role包含要使用正则表达式过滤的字符串的值。问题在于字符串中role 可能包含也可能未包含“ +”符号。 加号是正则表达式搜索的特殊字符,需要在搜索字符串中转义。

我创建这样的正则表达式搜索字符串(咖啡脚本):

"^"+role+"$"
Run Code Online (Sandbox Code Playgroud)

如何预处理role以转义任何“ +”号,以便正则表达式起作用?

javascript jquery datatables coffeescript

2
推荐指数
1
解决办法
6705
查看次数

使用正则表达式为所选字符添加反斜杠

我目前使用的代码很难看,因为我必须为每个特殊字符单独写"替换".

var str = ":''>";
str.replace("'","\\'").replace(">","\\>");
Run Code Online (Sandbox Code Playgroud)

我想将反斜杠添加到<>*()和?通过正则表达式.

javascript regex

2
推荐指数
1
解决办法
3479
查看次数

使用 JS 在 Google Apps 脚本文档中查找未知字符串并将其更改为大写

我在 Google Docs中的Fountain markdown http://fountain.io/中写道。喷泉是用来写剧本的。我想通过自动大写某些元素(打开或使用按钮,无论如何)使在喷泉中写作更友好一些。

这是一个格式正确的剧本(在喷泉中):

EXT. GAS STATION - DAY

Susie steps out of her car and walks toward the station attendant.

SUSIE
Hey, Tommy.

TOMMY
Where you been, Sue?  Come on in.

They walk toward the station entrance together.

INT. GAS STATION - NIGHT

etc...
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,编剧中有大量的大写锁定和移位操作,而且它变得乏味。

这就是为什么我想用小写(即int. gas station - day)编写并让 javascript/GAS 找到该文本并将其大写。与角色说话时相同:

susie
Hey, Tommy.
Run Code Online (Sandbox Code Playgroud)

会成为

SUSIE
Hey, Tommy.
Run Code Online (Sandbox Code Playgroud)

说话的角色总是在他们的名字上方有一个空行,下一行有文字。场景标题总是以 EXT 开头。或 INT。

到目前为止,我在 Stackoverflow 上得到了一些帮助,但我仍在努力让它发挥作用。我得到了一个很好的正则表达式字符串,它可以找到字符名称,但 GAS 的正则表达式实现有限。该正则表达式是[\n][\n]([^\n]+)[\n][^\n|\s]/gi. 我没有运气用正则表达式替换文本。我的 JS 技能是新生婴儿,但我已经完成了 …

javascript regex google-apps-script

2
推荐指数
1
解决办法
2万
查看次数

如果模式在javascript或jQuery中匹配,如何附加反斜杠

我必须检查字符串是否包含一些特殊字符,如果包含,请在其上添加反斜杠。

var spChar=['%','^','!'];
Run Code Online (Sandbox Code Playgroud)

如果"This contains % and ^ characters".
要创建字符串,我不想"This contains \% and \^ characters".

遍历所有字符。反正我可以通过使用正则表达式来实现

javascript regex jquery

2
推荐指数
1
解决办法
651
查看次数

Javascript - Incasesensitif split(),不使用toLowerCase()或toUpperCase()

我正在尝试拆分一个string使用split()方法,但它工作案例敏感,问题是在标题上输入.

问题是这样的

var str, ret;

str = "NubNubLabaLabaNubNub";
ret = str.split("labalaba"); // ret return ["NubNubLabaLabaNubNub"]

// which i wanted ["NubNub","NubNub"]
Run Code Online (Sandbox Code Playgroud)

当我使用toLowerCase()toUpperCase()整体string将改变,并在分裂后,我希望它是一个原始的.

str = "NubNubLabaLabaNubNub";
ret = str.toLowerCase().split("labalaba".toLowerCase());
Run Code Online (Sandbox Code Playgroud)

ret返回,["nubnub","nubnub"]但我想要的结果是["NubNub","NubNub"]

我仍然不知道如何返回"nubnub""NubNub"

谢谢.

javascript string

2
推荐指数
1
解决办法
36
查看次数

JS/ES6 - 将字符串拆分为数组,将元素保存在数组中(案例密集)

我正在尝试创建一个函数,它接受一个字符串和一个分隔符,并将字符串拆分为一个数组,同时保持分隔符,使用不区分大小写的搜索,并保留原始大小写.

例如,函数签名应如下所示:

advanced_split("Test Round Start", "St")
Run Code Online (Sandbox Code Playgroud)

它应该返回:

["Te", "st", " Round ", "St", "art"]
Run Code Online (Sandbox Code Playgroud)

请注意,拆分是使用不区分大小写完成的,但原始字符串中的大小写保留在输出数组中.

javascript arrays split ecmascript-6

2
推荐指数
1
解决办法
449
查看次数

用表情符号替换字符串的最有效方法

什么是替换文本的最有效方法:)->。

因此,假设我有一个类似“ Hello :)我叫亚历克斯”的文字。我应该将文本转换为“你好,我叫亚历克斯”

我在lodash实用程序库的帮助下解决了这个问题。

const replaceStringWithEmoji = (string) => {
  const emojiMap = {
    ':)': '',
    ':(': '',
    ':D': '',
    ';(': '',
    ':O': '',
    ';)': '',
    '8)': '',
    '>:@': '',
  };

  const emojis = [...Object.keys(emojiMap)];
  return _.join(_.map(_.split(string, ' '), (s) => {
    if (_.includes(emojis, s)) {
      return emojiMap[s];
    }
    return s;
  }), ' ');
};
Run Code Online (Sandbox Code Playgroud)

必须有一种更好的方法。也许与正则表达式?

短期回报

 return _.join(_.map(_.split(string, ' '), s => _.includes(emojis, s) ? emojiMap[s] : s), ' '); 
Run Code Online (Sandbox Code Playgroud)

javascript regex lodash reactjs

2
推荐指数
1
解决办法
68
查看次数

如何在不需要转义所有内容的情况下进行全局字符串替换?

我想用另一个字符串替换字符串中所有出现的模式。例如,让我们将所有 "$" 转换为 "!":

"$$$" -> "!!!"
Run Code Online (Sandbox Code Playgroud)

普通 string.replace 仅替换第一个匹配项:

"$$$".replace("$", "!"); // gives "$!!"
Run Code Online (Sandbox Code Playgroud)

和正则表达式迫使我逃到特殊字符

"$$$".replace(/\$/g, "!"); // Pattern is now full of backslashes!
Run Code Online (Sandbox Code Playgroud)

是否可以进行全局替换而不必手动转义特殊字符?我有一堆模式是我代码的一部分,我认为如果不得不手动转义所有模式,可读性会受到影响。

我期待一种直接做我想要的东西的技巧,或者至少一种将字符串转换为可由以下人员使用的转义形式的方法 new RegExp

javascript regex

1
推荐指数
1
解决办法
852
查看次数

如何在 JSON 文件中正确存储 RegEx 值数组并从 Javascript 中检索它?

我在 Javascript 文件中有以下数组变量,打算传递给Purgecss 作为其whitelistPatterns选项(请注意,我专门从gulp-purgecss插件中使用它):

var purgeWLP = [
    /^carousel-item.*/,    
    /collapsing/,           
    /show/,                
];
Run Code Online (Sandbox Code Playgroud)

现在我想将这个和其他项目变量存储在一个外部.json文件中,以便从不同的地方和文件访问;我尝试使用以下代码:

{
    "wlp": [
        "/^carousel-item.*/",
        "/collapsing/",
        "/show/"
    ]
}
Run Code Online (Sandbox Code Playgroud)

但是我遇到了错误并且没有得到我期望的结果,即与purgeWLPjavascript 文件中的变量完全相同的结果。

如何在.json文件中正确存储正则表达式值数组并从 Javascript 中检索它?

javascript arrays json purge gulp

1
推荐指数
1
解决办法
176
查看次数