相关疑难解决方法(0)

从字符串中使 URL 变得友好

例如我有这个字符串:

make no@ sen# `se !
Run Code Online (Sandbox Code Playgroud)

我想生成这样的网址

make-no-sen-se!
Run Code Online (Sandbox Code Playgroud)

我有这个:

    var value = $('.titleVal').val();
    if (value != '') {
        value = value.replace(/[^a-z0-9 _-]/gi, '-').toLowerCase();

        value = value.split(' ');
        var result = '';

        for (var i = 0; i < value.length; i++) {
            if ((value.length - 1) == i) {
                result += value[i];
            } else {
                result += value[i] + '-';
            }
        }
        $('#vidUrl').val(result);
    }
Run Code Online (Sandbox Code Playgroud)

但它会生成这个:

make-no--sen---se--
Run Code Online (Sandbox Code Playgroud)

javascript

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

正则表达西班牙语和阿拉伯语

如何编写与所有有效的西班牙语和阿拉伯语单词匹配的正则表达式.
在英语中,我知道,a-zA-z用希伯来文,它是?-?用俄语写的?-??-???.
我用Javascript.

javascript regex unicode

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

Javascript:如何确定文本字符串中的哪些字符是大写字母?

关于可能重复的问题的注释

该问题的公认答案无效。

它错误地将空格和其他非字母字符报告为toUpperCase == true。:-(

但是我现在看到其他答案之一确实提供了成功的解决方案。关于上一个问题的正确答案来自cimbor。我将发布此问题,因为Barmar接受的答案可以正确解决问题。

如何确定字符串中的哪些字符是大写字母?

我的第一次尝试是使用测试.toUpperCase,但非字母字符也返回true:

var text="Romeo & Juliet";

var characters=text.split('');

// and test with 

characters[i]===characters[i].toUpperCase()   // but spaces and "&" also test as true
Run Code Online (Sandbox Code Playgroud)

接下来,尽管我使用正则表达式并使用A-Z非英语字符集进行测试,但大写字母可能不在此范围内。

任何人都可以确定字符是否为大写字母吗?

javascript fonts

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

删除字符串中重复的连续单词的最快算法?

这是我得到的:

string = 'John bought bought black paint for his black car'
words = string.split(' ')
duplicatelessWords = []
for (const word of words) {
  if (duplicatelessWords[duplicatelessWords.length - 1] !== word) {
    duplicatelessWords.push(word)
  }
}
duplicatelessString = duplicatelessWords.join(' ')
Run Code Online (Sandbox Code Playgroud)

它应该返回“约翰为他的黑色汽车买了黑色油漆”

有没有办法让它更快?我想我需要连续多次使用它,有时是短字符串,有时是大字符串。

javascript

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

正则表达式究竟做了什么?

正则表达式[]总是让我感到困惑.以下是一些常用的模式[]

  • /[0-9]/ 捕获所有数字
  • /[A-Z]/ 捕获所有26个大写字母
  • /[a-z]/ 捕获所有26个小写字母

但是关于

  • /[A-Za-z0-9] 捕获所有数字,大写字母和小写字母

这也可以写成

  • /[0-z]它还捕获所有数字,大写字母和小写字母.但它也捕捉^|以及其他字符之间

为什么是这样?

javascript regex

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

标签 统计

javascript ×5

regex ×2

fonts ×1

unicode ×1