Dangling metacharacter的意思是说:摇摆不定的元字符。

翻译成编程意思就是:当前字符计算有其它意思,并不能确定你到底用于什么意思。类似于中文的多义词。

如下图所示,当我们要分割字符串中“+”的时候,编译不通过。

解决办法:

第一种:将“+”写成“\\+”


public class Test {
public static void main(String[] args) {
    <span class="hljs-built_in">String</span> str=<span class="hljs-string">"aaa+bbb+ccc+ddd"</span>;
<span class="hljs-built_in">String</span>[] <span class="hljs-built_in">split</span>=str.<span class="hljs-built_in">split</span>(<span class="hljs-string">"\\+"</span>);
<span class="hljs-keyword">for</span>(<span class="hljs-built_in">String</span> sp:<span class="hljs-built_in">split</span>){
System.out.println(sp);
} }

}



启动main方法:

控制台输出:



说明分割成功了。

第二种.将“+”转成成“[+]”;



启动main方法,控制台输出:



说明分割成功了。

一般元字符还包括:“*”等。

当然,像"\";"|"在正则表达式有特殊意义,我们建议用第二种办法啊,否则可能出现另外一种意思。

比如:

public class Test {
public static void main(String[] args) {
    <span class="hljs-built_in">String</span> str = <span class="hljs-string">"aaa|bbb|ccc|ddd"</span>;
<span class="hljs-built_in">String</span>[] <span class="hljs-built_in">split</span> = str.<span class="hljs-built_in">split</span>(<span class="hljs-string">"|"</span>);
<span class="hljs-keyword">for</span>(<span class="hljs-built_in">String</span> sp: <span class="hljs-built_in">split</span>) {
System.out.println(sp);
}
}

}



发现我们编译通过,但是当我启动main方法后,控制台输出:



说明当空字符串来分割了。

我们换一种方式:



启动main方法,控制台输出:



祝贺我们分割成功了。

                                </div>

解决:IDE编译报错:Dangling metacharacter的更多相关文章

  1. [转] 解决RegexKitLite编译报错

    本文永久地址为http://www.cnblogs.com/ChenYilong/p/3984254.html ,转载请注明出处. 在编译RegexKitLite的时候,报错如下: Undefined ...

  2. 解决RegexKitLite编译报错

    原地址:http://blog.csdn.net/kepoon/article/details/7586861 在编译RegexKitLite的时候,报错如下: Undefined symbols f ...

  3. IDEA解决 lombok 编译报错 cannot resolve method set/get 方法

    首先关于lombok的介绍 https://blog.csdn.net/ThinkWon/article/details/101392808 总之,就是通过添加注解的方式,不需要为类编写getter或 ...

  4. org.eclipse.wst.common.project.facet.core.xml文件模板,解决eclipse编译报错。

    <?xml version="1.0" encoding="UTF-8"?> <faceted-project> <fixed f ...

  5. 解决php编译报错configure: error: mcrypt.h not found. Please reinstall libmcrypt.

    yum install -y epel-releaseyum install -y libmcrypt-devel

  6. xocde7下导入libsqlite3.tbd编译报错的解决办法

    在xocde7下没有libsqlite3.dylib,只有libsqlite3.tbd,然后我导入了tbd.编译报错error: /Applications/Xcode.app/Contents/De ...

  7. wince6.0 编译报错:"error C2220: warning treated as error - no 'object' file generated"的解决办法

    内容提要:wince6.0编译报错:"error C2220: warning treated as error - no 'object' file generated" 原因是 ...

  8. caffe编译报错解决

    添加ssd中的一些层之后,编译报错: ../lib/libcaffe.so.1.0.0-rc5:对‘boost::match_results<__gnu_cxx::__normal_iterat ...

  9. win7 X64 使用VS2008 ->编译报错LINK : fatal error LNK1000: Internal error during Incr的解决

    编译报错LINK : fatal error LNK1000: Internal error during Incr的解决 Win7 旗舰版 Microsoft Visual Studio 2008 ...

随机推荐

  1. 「UVA12293」 Box Game

    题目链接 戳我 \(Solution\) 这道题第一眼看样例,猜了个结论偶数\(Alice\)赢,否则\(Bob\)赢,打了一发,交了上去果不其然的\(wa\)了,第二次猜\(2\)的幂次方\(Ali ...

  2. String.format保留小数位数

    java保留小数--四舍五入--想保留几位就几位 String.format("%.nf",d);----表示保留N位!!!format("%.nf",doub ...

  3. ZooKeeper的简述

    一.简介 ZooKeeper是一个高性能,分布式的,开源分布式应用协调服务.它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如同步,集群管理,命名空间,配置维护等.ZooKeeper使 ...

  4. mumu 连接安卓studio

    近期开发一个项目,折腾了好久,编写完程序后,真机上运行没有异常,而在MuMu模拟器上运行,程序总是中断(MuMu模拟器连接不上,只能打包好apk再放到MuMu上测试,有点蠢萌...),没办法调试,就获 ...

  5. java连接mysql出现The server time zone value '�й���׼ʱ��' is unrecognized or represents more than...

    在连接的配置文件中,指定数据库位置的末尾加上serverTimezone=UTC ```yml url: jdbc:mysql://localhost:3306/app?serverTimezone= ...

  6. Python 之 subprocess模块

    一.subprocess以及常用的封装函数运行python的时候,我们都是在创建并运行一个进程.像Linux进程那样,一个进程可以fork一个子进程,并让这个子进程exec另外一个程序.在Python ...

  7. 浏览器端-W3School-HTML:HTML DOM rows 集合

    ylbtech-浏览器端-W3School-HTML:HTML DOM rows 集合 1.返回顶部 1. HTML DOM rows 集合 HTML DOM Table 对象 定义和用法 rows ...

  8. Get web site source code

    public String getPageSource() { StringBuffer sb = new StringBuffer(); try { // 构建一URL对象 URL url = ne ...

  9. linux系统交互通道

    默认有6个命令交互通道和一个图形界面交互通道,默认进入到的是图形界面通道     命令交互模式切换:ctrl+alt+f1---f6     图形交互界面 ctrl+alt+f7 1.图形界面交互模式 ...

  10. 开源缓存框架之ASimpleCache

    ASimpleCache 是一个为android制定的 轻量级的 开源缓存框架.轻量到只有一个java文件(由十几个类精简而来). 1.它可以缓存什么东西? 普通的字符串.JsonObject.Jso ...