Tách Dãy Số Từ Chuỗi
Có thể bạn quan tâm
Bài viết này sẽ giúp các bạn tách dãy số từ chuỗi. Ví dụ với chuỗi
"-1.223 %^& fsf 0.234 56.65 fsf 9 f"Chúng ta sẽ tách được ra các số:
-1.223 0.234 56.65 9Ở đây mình thực hiện thành công trên c và java, các ngôn ngữ khác chắc cũng có cách ;). Nói thêm là cách làm có sử dụng đến regex, bạn nào chưa rõ có thể đọc thêm về nó.
Trong C: thực chất cách này là mình tham khảo và phát triển từ bài How to extract numbers from string in c
#include <string.h> #include <stdlib.h> #include <stdio.h> int main(void) { // khong doc duoc str khi bat dau bang dau tru (-) char* str= "-1.223 %^& fsf 0.234 56.65 fsf 9 f"; // khai bao, cap phat bo nho them s de cong them vao dau 1 ky tu char* const s = (char*)malloc(sizeof(strlen(str))+1); // cong them ky tu a strcpy(s, "a"); strcpy(s + strlen(s), str); printf("%s\n",s); // tach lay cac so int total_n = 0; int n; float i; // cac so can tach printf("\nday cac so\n"); while (1 == sscanf(s + total_n, "%*[^0123456789-]%f%n", &i, &n)) { total_n += n; printf("%f\n", i); } return 0; }Trong Java: Cách dễ dàng nhất là biến tẩt cả ký tự không phải số (ngoại trừ dấu âm, dấu chấm) rồi tách thành các phần tử như dưới đây:
public class ScanArrayNumFromString { public static void main(String[] args) { // chuoi ban dau String str = "-1.223 %^& fsf 0.234 56.65 fsf 9 f"; /** * thay the toan bo nhung ky tu khong phai so, khong phai dau am, khong * phai dau cham bang dau phay */ str = str.replaceAll("[^0-9,-\\.]", ","); /** cat thanh cac phan tu thong qua dau phay */ String[] item = str.split(","); // duyet cac phan tu, neu la so thi in ra for (int i = 0; i < item.length; i++) { try { Double.parseDouble(item[i]); System.out.println(item[i]); } catch (NumberFormatException e) { } } } }Bài viết được thực hiện khi một bạn nào đó tối nay nhờ mình sửa bài về cái này trong c, tìm mãi mới thấy cách dùng.
Bạn có thể sẽ thích:
Từ khóa » Tách Từng Ký Tự Trong Chuỗi Java
-
Java - Tách Các Từ Có Trong Chuỗi Và Hiển Thị Mỗi Từ Trên 1 Dòng.
-
Hỏi Cách Phân Tích Chuỗi Thành Mảng Các Ký Tự Trong Java
-
Java: Hàm Xử Lý Chuỗi (String) | V1Study
-
Cách Tách Một Chuỗi Trong Java? - HelpEx
-
Chuỗi String Trong Java
-
Bài Tập Xử Lý Chuỗi Trong Java
-
Giúp Xử Lý Chuỗi Khó !!! Tách Từ Trong Chuỗi Dang: Abc Xyz Htk
-
Cách Tách Một Chuỗi Trong Java
-
Phương Thức Chuỗi Java - TutorialCup
-
Lưu Trữ Tách Từng Ký Tự Trong Chuỗi Java - Xây Dựng Web
-
Phương Thức ToCharArray Trong Java String - VietTuts
-
Cắt Chuỗi Tĩnh Và động Trong Java - Deft Blog
-
Cắt Chuỗi Split() Trong Java
-
Tách Từng Ký Tự Trong Chuỗi Như Thế Nào? - Cộng đồng C Việt
-
Chuyển Chuỗi Thành Mảng Trong JavaScript
-
Tách Số Trong Chuỗi JavaScript
-
Tìm Hiểu Lớp StringTokenizer Trong Java Cùng Ví Dụ Cụ Thể
-
#034 - Tách Một Chuỗi Thành Một Mảng | DEVMASTER
-
Tách Kí Tự Xuống Dòng Ra Khỏi Chuỗi Và Chỉ Lấy Số Trong Chuỗi.