Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I have this regular expression that puts all the words that starts with @ into span tags. I've accomplished what is needed but i'm not sure that i completely understand what i did here.

content.replace(/(@S+)/gi,"<span>$1</span>")

  1. The () means to match a whole word, right?
  2. The @ means start with @.
  3. The S means "followed by anything until a whitespaces" .

But how come that if don't add the + sign after the S , it matches only the first letter?

Any input would be appreciated .

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
157 views
Welcome To Ask or Share your Answers For Others

1 Answer

S is any non-whitespace character and a+ means one or more of a. So

@S -> An @ followed by one non-whitespace character.

@S+ -> An @ followed by one or more non-whitespace characters


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...