2012-12-06 40 views
10

Bu kod satırının surl adında bir String dosyasında yer alan bir url için ne yaptığını merak ediyorum?Düzenli ifade nedir \ s *, \ s *?

String[] stokens = surl.split("\\s*,\\s*"); 

bu = surl olduğunu iddia Lets "http: // myipaddress: 8080/Harita/MapServer.html" stokens ne olacak? "\\s*,\\s*" regex

+7

o "0 ya da daha fazla beyaz alanlara çevrili olabilir virgül," ile böler. Verilen dizede, bölünme olmayacak. –

cevap

15

şu anlama gelir:

  • \s* boşluk herhangi bir sayıda karakter
  • virgül
  • \s* virgül ile bölünmüş ve boşluk tüketecektir boşluk karakteri

herhangi bir sayıda her iki taraf da

+1

Java regex'lerinde iki kez kaçan ters eğik çizgiler kraliyet ağrılarından biridir. –

+1

@tom yeah - Özellikle bir regex içinde bir literal baskslash kodlamayı seviyorum: '\\\\' – Bohemian

3
  • "Beyaz boşluk karakteri" anlamına gelir.
  • [\ t \ r \ n \ f] öğesini içerir. Yani: \ bir boşluk, bir sekme, bir satır kopması veya bir form beslemesiyle eşleşir.

    \ s *, \ *

    s \ s * - virgül izledi ve sonra boşluk karakterleri sıfır veya daha fazla olay ardından boşluk karakterleri sıfır veya daha fazla olay, diyor.

Bunlar kısa el ifadeleri olarak adlandırılır.

Bu sitede benzer regex bulabilirsiniz: http://www.regular-expressions.info/shorthand.html