質問: '/((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)/i'; このようにするとちゃんとリンクになるのですが、なぜ前者の順番だとできないのか分かりません...
回答: 現象再現しません。 例えば http://example.com/?aa=bbb http://example.com?aa=bbb のようにしても正常に置換できているように思います。 ?aa=bbb&aa=bbb のように条件をつなげても問題ないように見えます。 また `#questionTips1-2` のようにハッシュをつけても正常にhtml生成できています。 前後のテキストなどが影響していませんでしょうか? 現象が再現する文字列をご提示ください。