在特定元素之间替换特定字符

| 我想使用正则表达式替换字符串中的空格。所讨论的空格是字符串中两个元素之间的唯一空格。但是,字符串本身包含更多的元素和空格。到目前为止,我已经尝试过
(<-)[\\s]*?(->)
但这不起作用。应该拿 <-另一个单词-> 并允许我替换其中的空间。 由于\\ s选择所有空格,并且
(<-)[\\s\\S]*?(->)
选择<-和->之间的所有字符,我尝试重用该表达式,但是仅用于空格。 我不太擅长这些表达方式,我一生无法在任何地方找到答案。 如果有人能指出我的答案,那就太好了。谢谢。     
已邀请:
        很难确定想要什么,在示例之前和之后发布一些示例。并且,指定您使用的语言。 但是,看起来
(<-\\S+)\\s*(\\S+->)
应该应该这样做(删除空格)。 如果不保留
<-
->
,请将其移出括号,如下所示:
<-(\\S+)\\s*(\\S+)->
这是JavaScript中的样子:
var before  = \"Ten years ago a crack <-flegan esque-> unit was sent to prison by a military \"
            + \"court for a crime they didn\'t commit.\\n\"
            + \"These men promptly escaped from a maximum security stockade to the \"
            + \"<-flargon 666-> underground.\\n\"
            + \"Today, still wanted by the government, they survive as soldiers of fortune.\\n\"
            + \"If you have a problem and no one else can help, and if you can find them, \"
            + \"maybe you can hire the <-flugen  9->.\\n\"
            ;

var after   = before.replace (/(<-\\S+)\\s*(\\S+->)/g, \"$1$2\");

alert (after);
产生: 十年前,一个军事部门将一个破败的<-fleganesque->单位送入监狱,原因是他们没有犯下罪行。 这些人立即从最大的安全寨逃脱到<-flargon666->地下。 时至今日,仍被政府通缉的他们仍然以发财为生。 如果您遇到问题,没有其他人可以帮助您,并且找到了他们,也许您可​​以雇用<-flugen9->。     

要回复问题请先登录注册