🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: be.comp.programming
18 messages
18 total messages Started by Philip Paeps Thu, 15 May 2003 21:05
Regex gezocht :-)
#5234
Author: Philip Paeps
Date: Thu, 15 May 2003 21:05
29 lines
2538 bytes
Hoi -

Ik ben momenteel in twee stukjes software gelijk ondersteuning voor URIs aan't
opruimen.  Ik ben nu op zoek naar een relatief eenvoudige regex die de meest
gangbare URIs zou kunnen matchen. 

Orgineel dacht ik aan iets als:

   "((((ht|f)tps?)|mailto|news):(//)?[^\\ >\"\\t]*|www\\.[-a-z0-9.]+)[^\\ ,;\\t>\">]*"

Maar die matcht wat te veel naar mijn zin, en is niet zo goed in het
uitpluizen van numeric URIs.  Dan dacht ik even aan (watch your eyes):

  "\\b(?:https?|ftp|mailto|news)://(?:[^:@/]*(?::[^:@/]*)?@)?(?:(?:[^\\W_](?:(?:-(?!-)|[^\\W_]){0,61}[^\\W_])?\\.)+[a-z]{2,6}\\.?|localhost|(?:(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)|\\[(?:(?:[0-9A-F]{0,4}:){1,7}[0-9A-F]{1,4}|(?:[0-9A-F]{0,4}:){1,3}(?:(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?))\\])(?::\\d+)?(?:/[^)\\>\"\\s]*|$|(?=[)\\>\"\\s]))"
  
Die laatste wordt ook geacht numerieke IPv6 URIs te vangen, maar ik vrees dat
die wat gevaarlijk is voor de mentale gezondheid van iemand die het ding na
mij nog wil lezen :-)

Mijn vraag dus: heeft er iemand een _goeie_ regex die ook wat simpel is, en
genoeg matcht maar niet te veel?

 - Philip [ik vraag niet veel h� :-)]

-- 
Philip Paeps

  BOFH Excuse #3:
    electromagnetic radiation from satellite debris
Re: Regex gezocht :-)
#5235
Author: Gunter Schelfhout
Date: Thu, 15 May 2003 21:35
54 lines
3100 bytes
Philip Paeps wrote:

> Hoi -
> 
> Ik ben momenteel in twee stukjes software gelijk ondersteuning voor URIs
> aan't
> opruimen.  Ik ben nu op zoek naar een relatief eenvoudige regex die de
> meest gangbare URIs zou kunnen matchen.
> 
> Orgineel dacht ik aan iets als:
> 
>    "((((ht|f)tps?)|mailto|news):(//)?[^\\ >\"\\t]*|www\\.[-a-z0-9.]+)[^\\
>    ,;\\t>\">]*"

m/((ht|f)tps?)|mailto|news):/{2}(\w+\.){1,}\w{2,4}/

In stukken:
m/
        ((ht|f)tps?)    # http|https|ftp|ftps
        |mailto|news    # spreekt voor zich
        :               # de colon
        /{2}            # de //
        (\w+\.){1,}             # minstens 1 keer een woord, gevolgd door punt. of (\w+\.)+
        \w{2,4}$                # eindigend met de suffix be, com, aero, bizz, enz..
/x

Bovenstaande is niet getest. (ben net bezig aan chapter 5 van de Camel ;-)

> Maar die matcht wat te veel naar mijn zin, en is niet zo goed in het
> uitpluizen van numeric URIs.  Dan dacht ik even aan (watch your eyes):
> 
>   
"\\b(?:https?|ftp|mailto|news)://(?:[^:@/]*(?::[^:@/]*)?@)?(?:(?:[^\\W_](?:(?:-(?!-)|[^\\W_]){0,61}[^\\W_])?\\.)+[a-z]{2,6}\\.?|localhost|(?:(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)|\\[(?:(?:[0-9A-F]{0,4}:){1,7}[0-9A-F]{1,4}|(?:[0-9A-F]{0,4}:){1,3}(?:(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?))\\])(?::\\d+)?(?:/[^)\\>\"\\s]*|$|(?=[)\\>\"\\s]))"

Yeikes, was da?

Ik veronderstel dat je dit tracht te klaren met Perl?
Gooi het desnoods in een block van conditionals, zodat je het wat kan 
splitsen.

> Die laatste wordt ook geacht numerieke IPv6 URIs te vangen, maar ik vrees
> dat die wat gevaarlijk is voor de mentale gezondheid van iemand die het
> ding na mij nog wil lezen :-)

Ik doe de moeite niet eens. ;-)

> Mijn vraag dus: heeft er iemand een _goeie_ regex die ook wat simpel is,
> en genoeg matcht maar niet te veel?
> 
>  - Philip [ik vraag niet veel h� :-)]
> 

-- 
Blood, sweat & tears
Re: Regex gezocht :-)
#5236
Author: Philip Paeps
Date: Thu, 15 May 2003 22:00
38 lines
2965 bytes
Gunter Schelfhout <nospam@please.com> wrote:
> Philip Paeps wrote:
> > Ik ben momenteel in twee stukjes software gelijk ondersteuning voor URIs
> > aan't opruimen.  Ik ben nu op zoek naar een relatief eenvoudige regex die
> > de meest gangbare URIs zou kunnen matchen.
> > 
> > Orgineel dacht ik aan iets als:
> > 
> >    "((((ht|f)tps?)|mailto|news):(//)?[^\\ >\"\\t]*|www\\.[-a-z0-9.]+)[^\\,;\\t>\">]*"
> 
> m/((ht|f)tps?)|mailto|news):/{2}(\w+\.){1,}\w{2,4}/

Dat ziet er inderdaad veel schattiger uit dat het monsterlijk beest dat ik
had.  We gaat dat diertje eens grondig testen zie, thanks! :-)

> > Maar die matcht wat te veel naar mijn zin, en is niet zo goed in het
> > uitpluizen van numeric URIs.  Dan dacht ik even aan (watch your eyes):
> > 
> >   
> "\\b(?:https?|ftp|mailto|news)://(?:[^:@/]*(?::[^:@/]*)?@)?(?:(?:[^\\W_](?:(?:-(?!-)|[^\\W_]){0,61}[^\\W_])?\\.)+[a-z]{2,6}\\.?|localhost|(?:(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)|\\[(?:(?:[0-9A-F]{0,4}:){1,7}[0-9A-F]{1,4}|(?:[0-9A-F]{0,4}:){1,3}(?:(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(?:2[0-4]\\d|25[0-5]|[01]?\\d\\d?))\\])(?::\\d+)?(?:/[^)\\>\"\\s]*|$|(?=[)\\>\"\\s]))"
> 
> Yeikes, was da?

Een regex die in de loop van een paar uur denken een eigen leven beginnen
leiden is, met als gevolg dat er niets meer mee aan te vangen valt :-P

> Ik veronderstel dat je dit tracht te klaren met Perl?

PCRE -> <http://www.pcre.org/>.

 - Philip [test test test]

-- 
Philip Paeps

  In any series of calculations, errors tend to occur
  at the opposite end to the end at which you begin
  checking for errors.
Re: Regex gezocht :-)
#5237
Author: Gunter Schelfhout
Date: Thu, 15 May 2003 22:14
25 lines
1860 bytes
Philip Paeps wrote:

[knip]

>> > aan't opruimen.  Ik ben nu op zoek naar een relatief eenvoudige regex
>> > die de meest gangbare URIs zou kunnen matchen.
>> > 
>> > Orgineel dacht ik aan iets als:
>> > 
>> >    "((((ht|f)tps?)|mailto|news):(//)?[^\\
>> >    >\"\\t]*|www\\.[-a-z0-9.]+)[^\\,;\\t>\">]*"
>> 
>> m/((ht|f)tps?)|mailto|news):/{2}(\w+\.){1,}\w{2,4}/
> 
> Dat ziet er inderdaad veel schattiger uit dat het monsterlijk beest dat ik
> had.  We gaat dat diertje eens grondig testen zie, thanks! :-)
> 

Maar niet goed genoeg.
Dit doet blijkbaar wel beter zijn werk. (een paar keer getest met valide en 
niet-valide URL's):

m/(((ht|f)tps?)|mailto|news):\/{2}(\w+\.)*\w+\.\w{2,4}$/
-- 
Blood, sweat & tears
Re: Regex gezocht :-)
#5240
Author: sotto
Date: Fri, 16 May 2003 07:48
10 lines
1488 bytes
Ik ben al een aantal keer regexp tegengekomen/nodig gehad, 
en moest telkens hulp in roepen van een derde...dus nu mijn vraag:
Hoe lang duurt het om een stevige basis van dat chinees onder de knie te
krijgen en...
Welk (betaalbaar) boek moet ik hiervoor aanschaffen/halen in de bib?
of, zijn er super-mega-fantastische gratis cursussen online die even goed
zijn als een boek?

thx & greetz,
  sotto (die misschien regexp gaat leren binnenkort)
Re: Regex gezocht :-)
#5244
Author: Gunter Schelfhout
Date: Fri, 16 May 2003 08:07
24 lines
1870 bytes
sotto wrote:

> Ik ben al een aantal keer regexp tegengekomen/nodig gehad,
> en moest telkens hulp in roepen van een derde...dus nu mijn vraag:
> Hoe lang duurt het om een stevige basis van dat chinees onder de knie te
> krijgen en...
> Welk (betaalbaar) boek moet ik hiervoor aanschaffen/halen in de bib?
> of, zijn er super-mega-fantastische gratis cursussen online die even goed
> zijn als een boek?
> 

Leer ineens Perl.

Beginnen met:
Learning Perl           # �33,68
Programming Perl                # �54,22

eventueel:
Perl cookbook           # �45,15
Mastering Regular Expressions   # �38,49

Allen zijn ze van O'Reilly en dus per definitie betaalbaar.
-- 
Blood, sweat & tears
Re: Regex gezocht :-)
#5250
Author: sotto
Date: Fri, 16 May 2003 09:56
3 lines
1266 bytes
Waarom perl leren?
heb het enkel nodig soms in php en shell scriptjes die ik probeer te
schrijven.
Re: Regex gezocht :-)
#5251
Author: Philip Paeps
Date: Fri, 16 May 2003 10:25
29 lines
2070 bytes
sotto <junk@sotto.be> wrote:
> Ik ben al een aantal keer regexp tegengekomen/nodig gehad, 

Je hebt constant regexen nodig.  Gewoon om je in de winkel naar de koffie te
navigeren heb je een regex nodig :-)

> en moest telkens hulp in roepen van een derde...dus nu mijn vraag:
> Hoe lang duurt het om een stevige basis van dat chinees onder de knie te
> krijgen en...

Het probleem is niet echt het schrijven van het pattern.  Het probleem is
uitvissen wat je wil matchen en waar je moet stoppen.

> Welk (betaalbaar) boek moet ik hiervoor aanschaffen/halen in de bib?

  <http://www.oreilly.com/catalog/regex/>

> of, zijn er super-mega-fantastische gratis cursussen online die even goed
> zijn als een boek?

De perlre(1) manual page...

 - Philip

-- 
Philip Paeps

  It is a simple task to make things complex, but a complex
  task to make them simple.
Re: Regex gezocht :-)
#5252
Author: Philip Paeps
Date: Fri, 16 May 2003 10:26
17 lines
1700 bytes
sotto <junk@sotto.be> wrote:
> Waarom perl leren?

Omdat het plezant is :-)

> heb het enkel nodig soms in php en shell scriptjes die ik probeer te
> schrijven.

PHP gebruikt PCRE als regex-engine.  Net als ongeveer alles in dit universum
dat regexen gebruikt.

 - Philip

-- 
Philip Paeps

  There is no safety in numbers, or in anything else.
Re: Regex gezocht :-)
#5253
Author: Gunter Schelfhout
Date: Fri, 16 May 2003 10:28
22 lines
1971 bytes
sotto wrote:

> Waarom perl leren?
> heb het enkel nodig soms in php en shell scriptjes die ik probeer te
> schrijven.

Dat is uiteraard geen verplichting. Je kunt idd enkel het boek 'Mastering 
Regular Expressions' aanschaffen.

Maar ik veronderstel dat je PHP niet enkel gebruikt om html uit te printen, 
maar om input te valideren, forms te verwerken, databases aanspreken enz.
Bovendien schrijf je wat shell scripts om (ik veronderstel) wat 
sysadministration te doen.

Regular expressions zit ingebakken in Perl en maakt daar een groot deel van 
uit.
Perl zou je dus makkelijk kunnen helpen bij al jouw taken. Je zou het kunnen 
zien als een complement.

Soit, je ziet maar. ;-)
-- 
Blood, sweat & tears
Re: Regex gezocht :-)
#5257
Author: Dominique Devriese
Date: Fri, 16 May 2003 12:34
24 lines
2163 bytes
sotto  writes:

  sotto> Ik ben al een aantal keer regexp tegengekomen/nodig gehad, en
  sotto> moest telkens hulp in roepen van een derde...dus nu mijn
  sotto> vraag: Hoe lang duurt het om een stevige basis van dat
  sotto> chinees onder de knie te krijgen en...  

regexps zijn helemaal niet moeilijk..  ze zien er gewoon enorm
ingewikkeld uit ( die van Philip toch ;p )

  sotto> Welk (betaalbaar) boek moet ik hiervoor aanschaffen/halen in
  sotto> de bib?  of, zijn
  sotto> er super-mega-fantastische gratis cursussen online die even
  sotto> goed zijn als een boek?

er zijn genoeg goeie tutorials online, maar het hangt er natuurlijk
vanaf of je liever uit een boek leert of online.  Voor
programmeer-dingen prefereer ik nog altijd online tutorials, omdat in
die boeken alles meestal veel te uitgebreid is uitgelegd..
sjuus
domi

-- 
Beware of a tall black man with one blond shoe.
Re: Regex gezocht :-)
#5266
Author: Dirk Feytons
Date: Fri, 16 May 2003 20:07
18 lines
1907 bytes
Philip Paeps wrote:
> Hoi -
> 
> Ik ben momenteel in twee stukjes software gelijk ondersteuning voor URIs aan't
> opruimen.  Ik ben nu op zoek naar een relatief eenvoudige regex die de meest
> gangbare URIs zou kunnen matchen. 

Toevallig zag ik net in appendix B van RFC 2396 
(http://www.ietf.org/rfc/rfc2396.txt) een regex staan voor URI's. Bekijk 
het eens zou ik zeggen. Mogelijk kan je het gebruiken, anders levert het 
misschien inspiratie op.

-- 
Dirk

(PGP keyID: 0x448BC5DD - http://www.gnupg.org - http://www.pgp.com)

.oO� Do androids dream of electric sheep? �Oo.
Re: Regex gezocht :-)
#5267
Author: Philip Paeps
Date: Fri, 16 May 2003 20:20
41 lines
3040 bytes
Dominique Devriese <dominique.devriese@student.kuleuven.ac.be> wrote:
> sotto  writes:
> 
>   sotto> Ik ben al een aantal keer regexp tegengekomen/nodig gehad, en
>   sotto> moest telkens hulp in roepen van een derde...dus nu mijn
>   sotto> vraag: Hoe lang duurt het om een stevige basis van dat
>   sotto> chinees onder de knie te krijgen en...  
> 
> regexps zijn helemaal niet moeilijk..  ze zien er gewoon enorm ingewikkeld
> uit ( die van Philip toch ;p )

Och.  Enkel die dat een paar uur nodig hadden om 'gekweekt' te worden.  Dat
begint als een \w+ en dat eindigt als een iets meer complex beestje :-)

>   sotto> Welk (betaalbaar) boek moet ik hiervoor aanschaffen/halen in
>   sotto> de bib?  of, zijn
>   sotto> er super-mega-fantastische gratis cursussen online die even
>   sotto> goed zijn als een boek?
> 
> er zijn genoeg goeie tutorials online, maar het hangt er natuurlijk vanaf of
> je liever uit een boek leert of online.  Voor programmeer-dingen prefereer
> ik nog altijd online tutorials, omdat in die boeken alles meestal veel te
> uitgebreid is uitgelegd..

Mmm, matig mee akkoord :-)

Ik hou nogal van dooie bomen.  Een heel leuk initiatief om een beetje van the
best of two worlds te genieten is Safari: <http://safari.ora.com/>.  Je hebt
daar verschillende abonnementsformules om de verschillende O'Reilly boeken
online te lezen. 

Een dode boom legt volgens mij de 'principes' en de 'theorie' nog altijd beter
uit dan de gemiddelde howto of tutorial.  Ik ben een grote fan van learning by
example, maar soms heb ik toch net iets meer nodig.

 - Philip

-- 
Philip Paeps

  Do whatever your enemies don't want you to do.
Re: Regex gezocht :-)
#5268
Author: Philip Paeps
Date: Fri, 16 May 2003 20:20
20 lines
2099 bytes
Dirk Feytons <TaXaN@geenrommel.kotnet.org> wrote:
> Philip Paeps wrote:
> > Ik ben momenteel in twee stukjes software gelijk ondersteuning voor URIs
> > aan't opruimen.  Ik ben nu op zoek naar een relatief eenvoudige regex die
> > de meest gangbare URIs zou kunnen matchen. 
> 
> Toevallig zag ik net in appendix B van RFC 2396 
> (http://www.ietf.org/rfc/rfc2396.txt) een regex staan voor URI's. Bekijk 
> het eens zou ik zeggen. Mogelijk kan je het gebruiken, anders levert het 
> misschien inspiratie op.

Thanks :-)  Nu heb ik al veel inspiratie.  Iets zegt me dat de uiteindelijke
regex weer zo'n beest zal worden om 'U' tegen te zeggen ;-)

 - Philip

-- 
Philip Paeps

  A professor is one who talks in someone else's sleep.
Re: Regex gezocht :-)
#5269
Author: Dominique Devriese
Date: Fri, 16 May 2003 22:15
35 lines
2793 bytes
Philip Paeps writes:

  sotto> Welk (betaalbaar) boek moet ik hiervoor aanschaffen/halen in
  sotto> de bib?  of, zijn er super-mega-fantastische gratis cursussen
  sotto> online die even goed zijn als een boek?
  >>
  >> er zijn genoeg goeie tutorials online, maar het hangt er
  >> natuurlijk vanaf of je liever uit een boek leert of online.  Voor
  >> programmeer-dingen prefereer ik nog altijd online tutorials,
  >> omdat in die boeken alles meestal veel te uitgebreid is
  >> uitgelegd..

  Philip> Mmm, matig mee akkoord :-)

  Philip> Ik hou nogal van dooie bomen.  Een heel leuk initiatief om
  Philip> een beetje van the best of two worlds te genieten is Safari:
  Philip> <http://safari.ora.com/>.  Je hebt daar verschillende
  Philip> abonnementsformules om de verschillende O'Reilly boeken
  Philip> online te lezen.

  Philip> Een dode boom legt volgens mij de 'principes' en de
  Philip> 'theorie' nog altijd beter uit dan de gemiddelde howto of
  Philip> tutorial.  Ik ben een grote fan van learning by example,
  Philip> maar soms heb ik toch net iets meer nodig.

in zo'n geval lees ik meestal gewoon nog een tutorial, of knoei ik
gewoon zo lang tot ik weet waarom al mijn vorige pogingen niet werkten
;)
sjuus
domi

-- 
Zounds!  I was never so bethumped with words
since I first called my brother's father dad.
		-- William Shakespeare, "Kind John"
Re: Regex gezocht :-)
#5270
Author: Sam Mildener
Date: Sat, 17 May 2003 08:54
30 lines
2109 bytes
Gunter Schelfhout wrote:
> Philip Paeps wrote:
>
> [knip]
>
>>>> aan't opruimen.  Ik ben nu op zoek naar een relatief eenvoudige
>>>> regex die de meest gangbare URIs zou kunnen matchen.
>>>>
>>>> Orgineel dacht ik aan iets als:
>>>>
>>>>    "((((ht|f)tps?)|mailto|news):(//)?[^\\
>>>>    >\"\\t]*|www\\.[-a-z0-9.]+)[^\\,;\\t>\">]*"
>>>
>>> m/((ht|f)tps?)|mailto|news):/{2}(\w+\.){1,}\w{2,4}/
>>
>> Dat ziet er inderdaad veel schattiger uit dat het monsterlijk beest
>> dat ik had.  We gaat dat diertje eens grondig testen zie, thanks! :-)
>>
>
> Maar niet goed genoeg.
> Dit doet blijkbaar wel beter zijn werk. (een paar keer getest met
> valide en niet-valide URL's):
>
> m/(((ht|f)tps?)|mailto|news):\/{2}(\w+\.)*\w+\.\w{2,4}$/

Gaat deze en de vorige niet het .museum top level domain tegenhouden?

--

Sam Mildener
Re: Regex gezocht :-)
#5271
Author: Gunter Schelfhout
Date: Sat, 17 May 2003 10:36
29 lines
2350 bytes
Sam Mildener wrote:

[knip]

>>
>> Maar niet goed genoeg.
>> Dit doet blijkbaar wel beter zijn werk. (een paar keer getest met
>> valide en niet-valide URL's):
>>
>> m/(((ht|f)tps?)|mailto|news):\/{2}(\w+\.)*\w+\.\w{2,4}$/
> 
> Gaat deze en de vorige niet het .museum top level domain tegenhouden?

Je hebt uiteraard gelijk.
Deze regex was dan ook op een paar minuten ineengezet zonder met alles 
rekening te houden.

Je moet ergens wel een selectie maken. Deze regex is natuurlijk verre van 
perfect en er zijn wel mogelijkheden om dit te perfectioneren.
Je zou alle extensies in een array kunnen plaatsen met '|' als separator en 
dit in de regex gooien. Dit is de nauwkeurigste manier, maar dan moet je 
eerst alle extensies ingeven en als er moeten bijkomen, dan....

Beter is bv het laatste ( dit dus: \.\w{2,4}$ )  te veranderen naar 
\.\w{2,3}$ en vervolgens de uitzonderingen erbij plaatsen via alternation 
('|')

-- 
Blood, sweat & tears
RegEx Coach - de ideale tutor - Re: Regex gezocht :-)
#5188
Author: Kris De Decker http://www.jerboa...
Date: Sun, 18 May 2003 00:57
42 lines
2676 bytes
> of, zijn er super-mega-fantastische gratis cursussen online die even goed
> zijn als een boek?
Kijk eens naar RegEx Coach >> http://www.weitz.de/regex-coach/
----------------------------------------
Abstract
The Regex Coach is a graphical application for Linux and Windows which
can be used to experiment with (Perl-compatible) regular expressions
interactively. It has the following features:
It shows whether a regular expression matches a particular target
string.
It can also show which parts of the target string correspond to
captured register groups or to arbitrary parts of the regular
expression.
It can "walk" through the target string one match at a time. 
It can simulate Perl's split and s/// (substitution) operators. 
It tries to describe the regular expression in plain English. 
It can show a graphical representation of the regular expression's
parse tree.
It can single-step through the matching process as performed by the
regex engine.
Everything happens in "real time", i.e. as soon as you make a change
somewhere in the application all other parts are instantly updated.
----------------------------------------
RegEx coach is een leuk en handig programma - ideaal om te
experimenteren met regex's.
Heb ook O'Reilly's "Mastering Regular Expressions" gelezen - dat is
een goed boek met leesbare uitleg en verstaanbare voorbeelden. Het
legt een goede basis om op verder te bouwen >>
http://www.oreilly.com/catalog/regex/

sukses,

Kris De Decker
____________________
http://www.jerboa.be = Krachtige software voor de prijsbewuste KMO

[Projectbeheer] = Projecta
[HACCP] = HaccPack
[Productiebeheer] = Insight
[Vastgoedbeheer] = FullFill
[Onderhoud] = Softmaint
[Documentbeheer] = DocShare
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads