当前位置: 首页 > 面试题库 >

java split功能

史和泰
2023-03-14
问题内容

有人可以帮助我理解splitJava 如何工作。我有以下代码

String temp_array[];           
    String rates = "RF\\0.6530\\0.6535\\D";
    String temp = rates.substring(1, rates.length());
    System.out.println(temp);// prints F\0.6530\0.6535\D
    String regex = "\\";
    temp_array = temp.split(regex);
    String insertString = "INSERT into table values("+temp_array[0]+","+temp_array[1]+","+temp_array[2]+","+temp_array[3]+")";

但是在split函数中,我得到以下异常

Exception in thread "main" java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
\
 ^
    at java.util.regex.Pattern.error(Unknown Source)
    at java.util.regex.Pattern.compile(Unknown Source)
    at java.util.regex.Pattern.<init>(Unknown Source)
    at java.util.regex.Pattern.compile(Unknown Source)
    at java.lang.String.split(Unknown Source)
    at java.lang.String.split(Unknown Source)
    at simple_hello.main(simple_hello.java:15)

问题答案:

当您键入时"\\",它实际上是一个反斜杠(由于转义了Java字符串中的特殊字符)。

正则表达式还将反斜杠用作特殊字符,并且您需要使用另一个反斜杠对其进行转义。因此,最后,您需要传递"\\\\"as模式以匹配单个反斜杠。



 类似资料:
  • 问题内容: 我正在使用Ajax发布将表单数据提交到服务器,进行验证,然后根据数据是否有效并可以存储返回一条消息。我的ajax帖子中的成功功能没有运行。这是ajax帖子和成功消息的显示: 标签上没有显示任何消息。我尝试在代码中将successmessage变量设置为一个设置值,并且显示效果很好,所以成功函数一定存在问题,我看不到什么?我也尝试设置错误回调,如下所示: 但是仍然没有消息显示。 问题答案

  • 问题内容: 这段代码的结果为56。 知道里面发生了什么吗?我很困惑。 问题答案: X返回(值+3),而Y返回(值* 2) 给定值为4,这表示。 尽管函数不受范围限制(这意味着您可以安全地“嵌套”函数定义),但是此特定示例容易出错: 1)您不能在调用 之前先调用,因为函数只有执行一次才真正定义。 2)调用两次将导致PHP重新声明function ,从而导致致命错误: 致命错误:无法重新声明y() 两

  • 对非常基础的使用来说,使用 Vite 开发和使用一个静态文件服务器并没有太大区别。然而,Vite 还通过原生 ESM 导入提供了许多主要用于打包场景的增强功能。 NPM 依赖解析和预构建 原生 ES 引入不支持下面这样的裸模块导入: import { someMethod } from 'my-dep' 上面的操作将在浏览器中抛出一个错误。Vite 将在服务的所有源文件中检测此类裸模块导入,并执

  • Emmet allows you to write large HTML code blocks at speed of light using well-known CSS selectors. But it’s not the only thing that every web-developer needs: occasionally you have to edit your HTML a

  • 问题内容: 我用用,并尝试设置默认目录文件下载。 我在文档中找到了这个: 请改用ChromeDriver(ChromeOptions)。创建一个新的ChromeDriver实例。该功能将传递给chromedriver服务。 问题答案: 我希望您想问一下解决方法,以避免过时。 不推荐使用仅与一起构建的旧方法。现在,它以&为参数。因此,只需构建一个,然后将其与您一起传递即可删除弃用警告。 编辑: 由于

  • 问题内容: 我正在一个网站上,我们从XML文件中获取信息。效果很好,但是现在我需要对内容进行滑动。为此,我将使用jCarousel声明它们可以通过调用回调函数来处理动态加载的内容。 但是,当我成功调用函数时,无法进行初始的ajax加载。我究竟做错了什么? 我做错什么了吗?还是我必须去一个完全不同的地方?:-) 问题答案: 使用hulabula代替hulabula()或将函数直接传递给ajax选项:

  • 问题内容: 我的问题与jQuery方法有关。我无法使用成功参数。 这有效: 这不是: 在第一种情况下,我得到一个JavaScript警报窗口,该窗口使我知道调用的函数正在工作。我在第二个代码块中所做的所有更改都放在了。 这样做的目的是验证$ .ajax是否正在运行,以便在$ .ajax成功运行时可以在其中放置一些实际有用的代码。 问题答案: 在第二个示例中,除非您从服务器成功回电,否则将不会发生任

  • 实现点击工具栏中“+”号扩展区域内添加自定义事件,比如添加“最近订单”、“最近商品”: 注:图片需要添加到SDK中对应bundle资源文件中 /** @return 扩展内容 例如: @[@{@"picName": @"图片-(1)",@"highLightPicName": @"图片hover",@"name": @"图片1"}, @{@"picName": @"图片-(1)",@"highLi