比如将一串字符串“1 2 3 4 5 6 7 8 9 12 23 456 .....”中的数字解析出来
String data = " 123 456 4 5 6 6 8 5 2 2 85 2 5 2 5 2 5 0 5 2 ".trim(); System.out.println("首位的空格被取消了"+data.trim()+"首位的空格被取消了"); //统计空格出现次数 char[] c = data.toCharArray();//将字符串转化为字符数组 int count = 0;//用以统计空格出现了多少次 for(char v : c){//循环遍历 if(' ' == v)//一经发现 加一 count++; } //定义输入文本格式 String messageFormat = "{0,number,integer}";//每一个节点值是{编号,内容,类型} for(int i=0; i<count; i++){//开始根据空格数定义格式 messageFormat += " {"+(i+1)+",number,integer}"; } System.out.println(messageFormat); //解析出数字 Object[] data_values = new MessageFormat(messageFormat).parse(data.trim()); //遍历数字 for (Object v : data_values) System.out.println(v + "(" + v.getClass().getName() + ")");
结果:
首位的空格被取消了123 456 4 5 6 6 8 5 2 2 85 2 5 2 5 2 5 0 5 2首位的空格被取消了 {0,number,integer} {1,number,integer} {2,number,integer} {3,number,integer} {4,number,integer} {5,number,integer} {6,number,integer} {7,number,integer} {8,number,integer} {9,number,integer} {10,number,integer} {11,number,integer} {12,number,integer} {13,number,integer} {14,number,integer} {15,number,integer} {16,number,integer} {17,number,integer} {18,number,integer} {19,number,integer} 123(java.lang.Long) 456(java.lang.Long) 4(java.lang.Long) 5(java.lang.Long) 6(java.lang.Long) 6(java.lang.Long) 8(java.lang.Long) 5(java.lang.Long) 2(java.lang.Long) 2(java.lang.Long) 85(java.lang.Long) 2(java.lang.Long) 5(java.lang.Long) 2(java.lang.Long) 5(java.lang.Long) 2(java.lang.Long) 5(java.lang.Long) 0(java.lang.Long) 5(java.lang.Long) 2(java.lang.Long)
———————————————————————————————————————————————
使用MessageFormat可以解析任意自定义格式的string,很方便哦,如:
String sid = "u1234q5678"; Object[] values = new MessageFormat("u{0,number,integer}q{1,number,integer}").parse(sid); for (Object v : values) System.out.println(v + "(" + v.getClass().getName() + ")");
结果:
1234(java.lang.Long) 5678(java.lang.Long)
相关推荐
本文将深入解析`String`类的一些常用方法,帮助开发者更好地理解和使用这个核心类。 1. **构造方法** - `String()`:创建一个空字符串。 - `String(char[] value)`:根据字符数组创建字符串。 - `String(String ...
本文将详细介绍`String.Format`方法中的几种常用的数字格式化方式。 #### 1. 数字格式化符简介 `String.Format`方法通过不同的格式化符来指定输出的格式。格式化符通常放在大括号`{}`内,并且可以通过索引访问具体...
本篇文章将详细解析C#中如何进行这两种数据类型的转换,并讨论转换过程中需要注意的事项。 首先,我们来看最基础的转换方法: 1. **字符串(string)转为字节数组(byte[])**: 这个过程涉及到字符编码,C#中可以...
本文将通过一个简单的示例来探讨如何使用`string`处理数字,特别是如何将数字转换成字符串以及如何在字符串中嵌入数字。 #### 示例代码分析 首先,我们来看一下示例代码的核心部分: ```cpp #include #include...
下面将深入解析`String.Format`方法在数字格式化中的应用,以及如何通过不同的格式化字符串来达到预期的输出效果。 ### 基本用法 `String.Format`的基本语法是: ```csharp string result = string.Format(format...
需要注意的是,如果字符串无法解析成一个有效的整数,如包含非数字字符或超过int类型范围的数字,`parseInt()`方法将抛出`NumberFormatException`异常。 #### 3.2 int转String 将int类型的值转换为String类型,可以...
在这个场景中,我们关注的是如何使用DOM4J以String的形式读取XML内容,然后将String的值赋给XML中的特定节点,最后将更新后的内容写回XML文件。下面我们将详细探讨这一过程。 1. **解析XML到String** 要将XML文件...
在Android开发中,有时我们需要将文件转换为字符串(String)以便于在网络上传输或存储,同时也有时需要将字符串恢复为原始文件。Base64是一种常见的编码方式,它可以把二进制数据转换成ASCII字符串形式,同时又能...
在Java开发中,JavaBean和JsonString是两种常见的数据表示形式。JavaBean是Java对象的一种规范,用于封装数据,而JsonString是一种轻量级的数据交换格式,常用于前后端交互。本篇将深入探讨JavaBean与JsonString之间...
### C++ 中 string 转换为 double 的方法 在 C++ 编程语言中,字符串(`std::string`)与数值类型(如 `int`、`double`)之间的转换是常见的需求之一。这种转换通常用于处理用户输入的数据、解析配置文件或处理网络...
本文将详细介绍如何在Android项目中利用`String`资源进行字符串拼接,包括基本原理、实现方法及注意事项。 #### 基本概念 1. **资源文件**:在Android中,我们可以将常量文本存储在资源文件中,通常这些资源文件...
### C#中的String.Format方法与数字格式化 在C#编程语言中,`String.Format`是一种非常实用且灵活的方法,用于格式化字符串输出。通过该方法可以方便地控制数字、日期时间等数据类型的显示格式,这在实际开发过程中...
以下将详细解析从给定文件中提取出的关于“各种string类型转换”的知识点。 ### ANSI String与C风格字符串(char*)之间的转换 #### ANSI String转C风格字符串 ```cpp #include void __fastcall TForm1::Button1...
《Synthetic_Chinese_String_Dataset:中文识别数据集解析与应用》 Synthetic_Chinese_String_Dataset 是一个专为中文字符识别设计的数据集,由50个子集组成,每个子集包含大量的合成中文字符串图像。这个数据集是...
5. **运算符的处理**:在Java中,我们可以使用`Integer.parseInt()`方法将字符串中的数字转换为整型,然后利用基本的数学运算符如`+`, `-`, `*`, `/`进行计算。 6. **异常处理**:在实现这个功能时,我们还需要考虑...
在C#编程语言中,字符串(string)与字节(byte)之间的转换是常见的操作之一。这类转换在处理网络通信、文件读写等场景时尤为常见。本文将详细介绍如何在C#中实现从string到byte及byte[]的有效转换,并探讨其中涉及...
### Java中String类详解 #### 引言 在Java编程语言中,`String`类扮演着至关重要的角色,它用于表示字符序列。本文档旨在深入探讨`String`类的特性和功能,帮助开发者更好地理解和应用这一核心类。 #### String类...
如果字符串中包含非数字字符,它会忽略这些字符。如果字符串为空,`to_i` 返回 0。 接下来,我们看看其他编程语言中如何处理这个转换: 1. **Python**: 在 Python 中,可以使用 `int()` 函数进行转换。 ```...
### ORACLE中CLOB字段转String类型 在Oracle数据库中,`CLOB`(Character Large Object)是一种用于存储大量文本数据的数据类型。由于其能够存储非常大的文本块(最大可达4GB),因此常被用于存储文章、报告或任何...