小编Ken*_*ong的帖子

在分割时捕获以"[["并以"]]"开头的所有字符串作为正则表达式

目前我正在使用str.toLowerCase.split("[\\s\\W]+")摆脱空格和标点符号,但有一类特殊的字符串我想保留为一个并排除在此处理之外:

[[...multiple words...]]
Run Code Online (Sandbox Code Playgroud)

例:

[[Genghis Khan]] 
Run Code Online (Sandbox Code Playgroud)

应保持为

[[Genghis Khan]]
Run Code Online (Sandbox Code Playgroud)

我应该使用什么样的正则表达式?

java regex scala

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

试图让sed用另一个文件路径替换文件中的文件路径

这是我目前的代码.我试图用另一个文件名替换文件中的文件名字符串.但我目前正在收到错误

"sed:1:"s/directory ="[A-Za-z0 ...":替换命令中的坏标志:'U'"

这段代码有什么问题?

function restart_existing ()
{
    old="directory = \"[A-Za-z0-9\/]\""
    new="directory = \"$1\""
    sed -i '' "s/$old/$new/" "$HOME/angelpretendconfig" 
}


restart_existing "$HOME/blahblahblah/shoot/blah"
Run Code Online (Sandbox Code Playgroud)

编辑:谢谢!我已经采纳了你的建议,并修改了代码.

function restart_existing ()
{
    old="directory = \"*\""
    printf -v new 'directory = "%s"' "$1"
    sed -i '' "s;$old;$new;" "$HOME/angelpretendconfig" 
}

restart_existing "Query"
Run Code Online (Sandbox Code Playgroud)

但现在有问题的话来自

directory = "/home/jamie/bump/server"
directory = "Query"/home/jamie/bump/server"
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

bash shell sed

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

标签 统计

bash ×1

java ×1

regex ×1

scala ×1

sed ×1

shell ×1