Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript正则表达式-字符之间的空格?_Javascript_Regex - Fatal编程技术网

JavaScript正则表达式-字符之间的空格?

JavaScript正则表达式-字符之间的空格?,javascript,regex,Javascript,Regex,我发现这正是我需要的,但我需要JavaScript。基本上我需要正则表达式,它将在短语的每个字符之间放置空格 比如说, TEST 将成为 T E S T 解释会很有帮助,我对这一点还不熟悉,所以请友好:) 我正在一个只允许正则表达式代码的程序中构建我的项目,所以它必须是这样。你说你想要JavaScript,然后你编辑了你的问题(在我发布了这个答案之后)说你必须使用正则表达式。如果没有这个(对我来说很奇怪)要求,您可以使用JavaScript中的split()和join()来实现这一点,而无需

我发现这正是我需要的,但我需要JavaScript。基本上我需要正则表达式,它将在短语的每个字符之间放置空格

比如说,

TEST
将成为

T E S T
解释会很有帮助,我对这一点还不熟悉,所以请友好:)


我正在一个只允许正则表达式代码的程序中构建我的项目,所以它必须是这样。

你说你想要JavaScript,然后你编辑了你的问题(在我发布了这个答案之后)说你必须使用正则表达式。如果没有这个(对我来说很奇怪)要求,您可以使用JavaScript中的
split()
join()
来实现这一点,而无需使用正则表达式

var myString = "TEST";
var result = myString.split('').join(' ');
console.log(result); // "T E S T"

对于这一点,以及迄今为止所有正则表达式解决方案提供的,如果您有特殊字符,这将是有问题的。例如,您可以使用以下内容:

(.)(?!$)
并替换为
“$1”
(空格)

  • ()
    匹配单个字符。在组1中捕获(
    $1

  • (?=)
    积极向前看。检查捕获的字符后面是否有其他字符

  • “$1”
    替换字符串<代码>$1包含在组1中捕获的字符,后跟空格

  • g
    全局修饰符。对字符串中的所有匹配项全局应用替换


我很高兴地问您,到目前为止您尝试了什么,以及为什么要使用正则表达式。通过将字符串拆分为字符,然后用空格将它们连接起来,就可以不用一个字符了<代码>str.split(“”).join(“”)我投票结束这个问题,因为它使用了冒犯性的语言。什么将成为
tea
呢?你将用什么样的“程序”来构建你的项目,只允许正则表达式代码?regexp本身不操纵或变异字符串;他们只是比赛。您可以使用诸如
String#replace
之类的例程,根据匹配regexp的结果对字符串进行变异。但是,如果您能够使用
replace
,那么您也可以使用
split
join
@torazaburo,我正在制作一个翻译器,而且我以前从未编写过代码。我已经准备好放弃这个问题了,因为,没人会惊讶,互联网对无知的回应是粗鲁的信息。JS字符串中没有“多字节”字符。只有Unicode字符。“拆分和合并对任何角色都适用。@torazaburo我正在考虑在中描述的问题。不过,我认为你是对的,这在这里不适用。哎呀,我收回了。这个角色和不寻常的角色绝对存在问题。例如,在浏览器控制台中尝试以下操作:
'foo该字符是什么?它是Unicode字符:
"TEST".replace(/(.)(?=.)/g, "$1 ")
// Outputs
// => T E S T