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. 前世今生:Hive、Shark、spark SQL

    Hive (http://en.wikipedia.org/wiki/Apache_Hive )(非严格的原文顺序翻译)  Apache Hive是一个构建在Hadoop上的数据仓库框架,它提供数据的 ...

  2. EBS 修改系统名称

    修改EBS登录系统的左上角名称 方法: 修改 配置文件: 地点名称  ,在地点层输入相应的名称即可

  3. [eclipse]如何修改Eclipse编辑器的字体

    步骤如下, 菜单->"Window"->“Preference”->“General”->“Appearance”->“Colors & Fo ...

  4. ubuntu关于ssh协议登录问题

    说明 初始化系统默认不安装ssh如果你想要通过crt等工具连接,你需要手动安装ssh 1.安装ssh工具 使用ubuntu安装的命令sudo apt-get install openssh-serve ...

  5. ubuntu下如何检查nvidia显卡驱动是否安装OK?

    答:使用sudo lshw -c video即可,笔者的输出如下: jello~$ sudo lshw -c video*-display description: VGA compatible co ...

  6. Node fs 创建多层文件夹

    一.dirname()方法 1. 获得路径当中最后一段文件或文件夹所在的路径.多次调用path.dirname将会逐层返回上级目录 var path=require("path") ...

  7. Appium移动自动化测试(五)之应用操作

    实验简介 对于APP测试来讲, 除了进行功能测试以外, 安装和卸载其实也是一个很重要的测试项. 试想, 如果用脚本来实现了, 可以事先判断该应用是否已安装, 根据判断结果来执行安装和卸载的动作, 循环 ...

  8. FICO相关号码范围IMG设定

    一.定义会计文件号码范围——FBN1 二.定义总账检视的文件号码范围——FAGL_DOCNR 三.指派客户科目群组的号码范围 四.定义供应商号码范围——XKN1  五.维护订单号码范围——KONK

  9. springboot集成springcloud,启动时报错java.lang.AbstractMethodError: null

    出现这个问题是springboot和springcloud的版本不匹配. 我此处使用了springboot 2.0.4.RELEASE,springcloud 使用了Finchley.SR2. 修改方 ...

  10. Swift基础知识点的学习

    每一个程序员都有一颗不满足当下知识的学习,学习Swift更是每一个iOS程序员必学技能!!! 一说道基础点的学习,当然涵盖的方面也是很多很多啦....然而每一个小知识点的学习,写一个博客,我也觉得没什 ...