首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正则表达式,用于匹配字符串中的空格

正则表达式,用于匹配字符串中的空格
EN

Stack Overflow用户
提问于 2021-10-12 00:30:23
回答 1查看 45关注 0票数 0

我需要在一些文本的前面附加一个前缀,在文本和前缀之间留出空格。

例如:"Sample text“将变成"EXTERNAL Sample text”。

如果前缀已经包含在文本中(不区分大小写),那么我需要将前缀替换为全部大小写。

例如,如果文本是:"External Sample“或"ExternalSample”或"EXTERNALSample":

在所有情况下,我需要有“外部样本”与空格之间的前缀和样本文本。

代码语言:javascript
复制
    private static final String TITLE_REGEX_PATTERN = "(?i)"+ Pattern.quote("[external]");
    private static final String EXTERNAL_TITLE_PREFIX = "[EXTERNAL] ";



private String appendPrefixToTitle(String title) {
        if (!titleContainsPrefix(title)) {
            return "[EXTERNAL] " + title;
        } else {
            return title.replaceFirst(TITLE_REGEX_PATTERN, EXTERNAL_TITLE_PREFIX);
        }
    }

private boolean titleContainsPrefix(String title) {
        return StringUtils.beginsWithIgnoreCase(title, EXTERNAL_TITLE_PREFIX.trim());
    }

如果标题已经包含正确的格式,这样做将添加额外的空格。建议我一个更好的方法,而不是拆分输入。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-12 00:48:29

尝试使用此代码替换文本开头可能的外部

代码语言:javascript
复制
String text = "[External]Sample";
text = Pattern.compile("(^\\[EXTERNAL\\]\\s*)?", Pattern.CASE_INSENSITIVE).matcher(text).replaceFirst("[EXTERNAL] ");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69533809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档