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 » Hàm Tách Số Trong Chuỗi C
-
Tách Số Trong Chuỗi C
-
Tách Chuỗi Trong C (strtok)
-
Tách Số Ra Khỏi Chuỗi Và Tính Tổng - Cộng đồng C Việt
-
Cần Giúp Bài Tách Chữ Số - Programming - Dạy Nhau Học
-
Làm Thế Nào để Tách Chuỗi Văn Bản Trong Excel Theo Dấu Phẩy ...
-
Hướng Dẫn Cách Tách Số Ra Khỏi Chuỗi Trong Excel Có Ví Dụ Minh Họa ...
-
Hàm Strtod Tách Số Từ String | VnCoding
-
Lập Trình C: Hàm Xử Lý Chuỗi (String) | V1Study
-
Cách Tách Số Ra Khỏi Chuỗi Ký Tự Trong Excel Nhanh Nhất
-
Tách Số Ra Khỏi Chuỗi Trong Excel - Thủ Thuật Phần Mềm
-
Hàm Tách Số Từ Trong Chuỗi | Giải Pháp Excel
-
[C++ Cơ Bản] Tách Các Từ Trong Một Chuỗi | Thào A Vảng - YouTube
-
Hướng Dẫn Xử Lý Chuỗi Trong Lập Trình Vi điều Khiển (P1) - TAPIT