【问题标题】:How to remove all spaces from a variable which do not appear next to a particular symbol?如何从变量中删除未出现在特定符号旁边的所有空格?
【发布时间】:2012-04-05 19:32:13
【问题描述】:

我需要删除变量中单词之间的空格,但不要删除以下任何符号旁边的任何空格:①、②、③、④、⑤、⑥、⑦、⑧、⑨或⑩。例如:

The bear ate the fish.

这就变成了:

Thebearatethefish.

例如:

The ① bear ate the ② fish.

这就变成了:

The ① bearatethe ② fish.

如何从变量中删除所有空格,除了出现在这些符号之一旁边的空格?

【问题讨论】:

    标签: lua


    【解决方案1】:

    通常你想做的是做一个模式替换:

    string.gsub("The bear ate the fish.", "%s", "")
    

    现在你需要教 gsub 关于特殊字符的知识:

    string.gsub("The ① bear ate the fish.", "[^①②③④⑤⑥⑦⑧⑨⑩]%s[^①②③④⑤⑥⑦⑧⑨⑩]", "")
    

    只要前一个和下一个字符不在集合中,这将替换任何空格。如果没有使用 unicode 编译 Lua,您可能需要将字符替换为正确的 unicode 值。

    【讨论】:

    • -1 - 这给出了输出 The ① beathish.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-17
    • 1970-01-01
    • 2012-04-29
    • 2022-01-10
    • 2011-08-16
    相关资源
    最近更新 更多