2011-02-04 36 views

Trả lời

6

Làm thế nào về useDelimiter(",|\\n");

+0

Đầu tiên \ làm gì? – tomejuan

+3

Nó thoát khỏi thứ hai \. Regex sử dụng \ n để có nghĩa là newline nhưng do đó, Java để bạn viết \\ n được dịch sang \ n cho regex. –

+0

Tự hỏi tại sao tomejuan không trả lời. Có thể "thoát", "regex" hoặc giải thích về '\' thứ hai. – DSlomer64

14
Scanner s = new Scanner("hello, world \n hello world"); 
s.useDelimiter(",|\\n"); 
while(s.hasNext()){ 
      System.out.println(s.next()); 

} 

Output

hello 
world 
hello world 
+0

JavaDoc là hoàn toàn không có sự giúp đỡ để tomejuan. – DSlomer64

1

useDelimiter mất một mẫu biểu thức chính, vì vậy, nó sẽ là một cái gì đó giống như ",|\n"

0

Jigar hoàn toàn chính xác. Nhưng nếu nó không hoạt động, hãy thử ",|\\r"

vì hầu hết các tập tin văn bản có \ r \ n thay vì chỉ \ n

0

Sử dụng Scan ký tự phân cách cho các tập tin Excel - không bỏ sót điều RegEx. Trong trường hợp của tôi, tệp excel bị giới hạn bởi '|'. Tôi đã dành nhiều thời gian đáng kể để phân tích các hàng bằng cách sử dụng scanner.useDelimiter ("|") và lấy lại ký tự theo ký tự. Thay thế bằng scanner.useDelimiter ("\\ |") đã giải quyết được vấn đề của tôi!

Các vấn đề liên quan