- Siêu lớp và danh mục iOS/Objective-C
- object-c - -1001 lỗi khi NSURLSession vượt qua httpproxy và /etc/hosts
- java - Nhận địa chỉ url bằng lớp mạng
- ios - Âm thanh không phát trong thông báo đẩy
我有一个字符串 Chuỗi placeStr="place1*place2*place3"
Tôi muốn lấy một mảng chứa place1, place2, place3 như dưới đây:
Chuỗi[] địa điểm=placeStr.split("*");
System.out.println(địa điểm[0]);
Nhưng nó hiển thị lỗi E/AndroidRuntime(32118): Do: java.util.regex.PatternSyntaxException: Lỗi cú pháp trong mẫu biểu thức chính quy gần chỉ mục 1: *
Tôi nghĩ lý do là ký tự "*". Nếu tôi thay đổi * thành -, nó sẽ hiển thị tốt. tôi phải làm gì?
câu trả lời hay nhất
Khi bạn sử dụng Regexp,\*
Đại diện cho biểu thức được xác định cuối cùng 0 hoặc hơn
trường hợp. Ví dụ.
S*
có nghĩa là khớp bất kỳ với 0
Hoặc thứ gì đó có nhiều chữ "s" hơn. Điều này sẽ phù hợp "ss"
,"sssss"
hoặc ""
.
Khi chúng ta thực sự muốn tìm kiếm*
, thay vì sử dụng nó như một toán tử, chúng ta cần sử dụng\
làm điều đóbỏ trốn
Đặc trưng. Tuy nhiên, số ít \
cho các ký tự đặc biệt (ví dụ: \S
Và \t
), nên chúng ta cũng cần phải thoát nhân vật, với nhân vật khác \
.
Điều này dẫn đến:
\ (bỏ qua dấu gạch chéo tiếp theo)
\ (bỏ qua ngôi sao)
* (có thể là 0 hoặc nhiều, nhưng nó bị bỏ qua nên có nghĩa là theo nghĩa đen.)
nói cách khác
\\*
Trong Java, chúng ta có thể sử dụng nó như thế này:
Chuỗi[] địa điểm=placeStr.split("\\*");
System.out.println(địa điểm[0]);
Về java - chia theo ký tự * trong chuỗi java, chúng tôi tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/20379760/
Ai đó có thể giải thích cho tôi ý nghĩa của tuyên bố này trong C++ không? Tôi chưa bao giờ thấy một tuyên bố như thế này và tôi chỉ bối rối không biết ý nghĩa và ý nghĩa của nó: int ix((dx > 0) - (dx > 1));
Tôi có một cơ sở dữ liệu mysql với các từ. Tôi sử dụng câu lệnh while để in tất cả các từ. Vì vậy, tôi nghĩ: rau diếp khoai tây cà chua mọi thứ đều ổn nhưng tôi muốn sắp xếp các từ theo độ dài. Tôi đã thử: if(strlen($go['words']) =
Phương pháp truyền tải đường dẫn trung thực của tôi không còn hoạt động nữa - nó coi các khoảng trắng là dấu phân cách. Đã được một thời gian kể từ khi tôi thực hiện lập trình hàng loạt. Khi sử dụng vòng lặp FOR, dấu phân cách duy nhất được phép là tùy chọn FOR/F. Tôi không muốn tạo một tệp tạm thời chứa đường dẫn, tôi muốn làm một cái gì đó như: C:
Tạo một bảng mới: ? 1
Tôi có một số tệp văn bản có khối nhiều dòng, ví dụ 2011/01/01 13:13:13,, Some Some Text,=, [ some text [
Tôi muốn có sự tách biệt rõ ràng giữa các phần khác nhau của tệp trong Vim: Tôi muốn điền một dòng bằng # và sau đó viết tiêu đề của tôi vào giữa: ############### # ############### Tiêu đề căn giữa############
Làm cách nào để thoát "*" sang "\*" trong clojure? Dường như không thể làm cho nó hoạt động: (s/thay thế "A*B" #"*" "*") tạo ra "A*B" (tất nhiên) (s/thay thế "A*B" #"*" "\*
Tuần này tôi đã cố gắng làm quen nhiều hơn với C. Tôi đã đọc C Primer Plus (Phiên bản thứ 5) nhưng tôi vẫn gặp một số vấn đề với các biến và con trỏ. Đây là đoạn script tôi đã sử dụng để kiểm tra: int main (int arg
Sự khác biệt giữa việc khởi tạo Danh sách trong Dart là gì? Sử dụng toán tử mới và khởi tạo nó bằng chữ? Trường hợp 1: Danh sách args = Danh sách mới (2); args[0] = 1;
Tôi có một vectơ ký tự trông như thế này: "Internet" "Internet" "-1" "-5" "Internet" "Internet" Tôi muốn thay thế tất cả các giá trị số âm (-1, -5, v.v.
Tôi có khung dữ liệu được gọi là gen như bên dưới ABCDE 1 NA 4.35 35.3 3.36 4.8
Tôi có một vectơ ký tự trông như thế này: "Internet" "Internet" "-1" "-5" "Internet" "Internet" Tôi muốn thay thế tất cả các giá trị số âm (-1, -5, v.v.
Tôi đang tự hỏi tại sao các biến trong CMake thường được đặt trong ký hiệu đô la và dấu ngoặc nhọn. Ví dụ: tôi thấy lệnh gọi này trong hướng dẫn CMake .include_directories(${PROJECT_BINAR
Tôi đang cố gắng làm một cái gì đó như thế này $this->db->count_all("grant_money")->where('id',5); Nếu có cách nào khác để làm điều này xin vui lòng cho tôi biết. Cảm ơn bạn, tôi đã tưởng tượng nó ở trên
Tại sao điều này hoạt động: int a = 5; int *aPtr = &a; printf("%i", *aPtr); Nhưng nó không: int aPtr = &a;
Giả sử tôi có một chuỗi ngày ở định dạng "23.11.13" và tôi muốn thay thế mỗi dấu chấm bằng dấu "/" để nó trông giống như "23/11/13". Đây là mã của tôi nhưng nó không hoạt động vì biểu thức chính quy nhìn thấy "." và hiểu nó khớp với mọi ký tự thay vì mới
Làm cách nào để in * tại ký tự nhập trên bàn phím? Ví dụ: Nếu tôi gõ :mouli trong bảng điều khiển thì nó sẽ thay thế m bằng *, sau đó thay thế o bằng *, v.v. Câu trả lời hay nhất Không có cách nào giải quyết vấn đề này bằng API tiêu chuẩn. Nếu đây thực sự là một yêu cầu rõ ràng
Gần đây tôi đã bắt đầu học Javascript và trong khi thực hiện một số thử nghiệm với mã, tôi bị kẹt ở mã này: var k = { ab: "hi", func: function() { cons
Tôi cần thay thế các bản sao trong cột đầu tiên bằng "." Ví dụ: name1 name1 name1 name2 name2 name3 name3 Tôi cần xuất ra: name1 .
Tôi có hai bảng sau đây về giáo dục và công việc, mỗi bảng có trường dấu thời gian. Trong câu lệnh tiếp theo, tôi muốn chọn và xác định dấu thời gian nào trong hai dấu thời gian được lưu trong hai bảng là mới nhất. Tôi đã thử những cách sau nhưng không hài lòng;
Tôi là một lập trình viên xuất sắc, rất giỏi!