Command Palette

Search for a command to run...

Hoe tekst te vinden en te vervangen zonder Regex

Hoe tekst te vinden en te vervangen zonder Regex

T
Toolz Team
|Sep 13, 2026|16 min lezen
Geef de voorkeur aan Toolz.dev op Google

Onderdeel van de Teksttools-collectie

Zoek en vervang tekst

Zoek en vervang tekst online zonder reguliere expressies Pas meerdere regels tegelijk toe, match hele woorden en controlecase Client-side, geen aanmelding.

Gebruik de Zoek en vervang tekst

Ik ren Toolz.dev en breng het grootste deel van mijn week door in WordPress plugin code, Laravel API's, en React front ends Find and replace is de enkele bewerking die ik meer dan enig ander uitvoer, en toch wil ik negen van de tien keer niet de krachtige versie ervan Ik wil geen reguliere expressie Ik wil een stuk tekst nemen, zeg elk voorkomen van een client' s oude productnaam, en ruil het voor de nieuwe, precies, zonder een verdwaald karakter in mijn zoekterm dat overeenkomt met iets wat ik nooit wilde aanraken Dat is wat de Hulpmiddel zoeken en vervangen doet, en deze gids gaat over waarom de letterlijke, saaie versie van vinden en vervangen degene is die je het grootste deel van de tijd wilt.

tl;dr: Deze tool doet letterlijk vinden en vervangen over een blok geplakte tekst De zoekterm komt precies overeen zoals getypt, dus een punt komt overeen met een punt en een dollarteken komt overeen met een dollarteken, zonder ontsnappen en zonder toevallige overmatching U kunt verschillende regels voor vinden en vervangen toevoegen en deze in één keer toepassen, overeenkomsten beperken tot hele woorden, en hoofdlettergevoeligheid in - of uitschakelen Het rapporteert hoeveel vervangingen elke regel heeft gemaakt Alles draait in uw browser, dus niets dat u plakt wordt geüpload Wanneer u echt wildcards en capture-groepen nodig hebt, is een regex-replacer in plaats daarvan de juiste tool.

Wat is letterlijk vinden en vervangen, en waarom doet "letteral" ertoe?

Zoeken en vervangen is de handeling waarbij elk voorkomen van de ene string wordt gelokaliseerd en deze wordt verwisseld voor een andere. Elke editor heeft het. Wat varieert is hoe de tool uw zoekterm interpreteert, en die ene ontwerpkeuze beslist of de tool u helpt of stilletjes uw tekst verpest.

Er zijn twee scholen Een replicator met reguliere expressie behandelt uw zoekterm als een patroon, waarbij bepaalde tekens opdrachten zijn: een punt betekent & quot; elk teken, & quot; een asterisk betekent & quot; herhalen, & quot; een dollarteken betekent & quot; einde van regel, & quot; en haakjes, haakjes en backslashes hebben allemaal een speciale betekenis. Een letterlijke replicator behandelt uw zoekterm als zichzelf, teken voor teken, zonder dat er een speciale betekenis aan verbonden is.

Meestal is letterlijk wat je wilt, en hier is de concrete reden Stel dat je de versiereeks wilt vervangen 1.0.0 van 2.0.0 in een blok tekst In een regex tool zijn die puntjes jokertekens, dus je zoekopdracht komt ook overeen 1x0y0, 1a0b0, en andere snaren die je nooit bedoeld had Je zou aan de puntjes moeten ontsnappen als 1\.0\.0 om het veilig te maken, en als je het vergeet, doet de tool iets subtiel verkeerds en waarschuwt je niet In een letterlijke tool, 1.0.0 inkomsten 1.0.0, de stippen zijn stippen, en er is niets om te ontsnappen en niets om verkeerd te krijgen Hetzelfde geldt voor een prijs als $9.99, een bestandspad met backslashes, of een fragment code met haakjes erin Het letterlijke gereedschap verwerkt ze allemaal zonder dat je aan patroonsyntaxis denkt, omdat er geen patroonsyntaxis is.

Wanneer moet ik in plaats daarvan een regex-replacer gebruiken?

Letterlijk is de juiste standaard, maar het is niet het juiste antwoord op alles, en ik vertel je liever waar het stopt dan te doen alsof het niet Reik voor een regex vervang tool wanneer het ding dat je matcht een vorm is in plaats van een vaste string Als je elk viercijferig jaar moet matchen, of elk e-mailadres, of elke regel die begint met een hash, of je wilt gematchte tekst opnieuw formatteren door er stukken uit te trekken met capture-groepen, dat is patroonwerk en een letterlijke tool kan het niet doen De regex-tester is de plek om dat patroon te bouwen en te debuggen voordat je het uitvoert.

De scheidslijn is simpel Als je precies kunt uittypen wat je zoekt, gebruik dan letterlijk zoeken en vervangen en bespaar jezelf de ontsnapping Als wat je zoekt een categorie is van dingen die een vorm delen maar geen exacte tekens, gebruik dan een regex. De meeste dagelijkse tekstopruiming is de eerste soort, daarom dekt de letterlijke tool het merendeel van de echte taken en de regex tool de rest.

betrekking goed doen waarom
Hernoem een vast woord of zin Letterlijke vondst en vervanging De term is exact; geen patroon nodig
Een zoekterm met stippen, schuine strepen of $ Letterlijke vondst en vervanging Geen ontsnappen, geen toevallige wildcard-wedstrijden
Los verschillende termen in één keer op Letterlijke vondst en vervanging, meerdere regels Elke regel is exact en wordt in volgorde toegepast
Kom overeen met elk jaar, e-mail of codevorm Regex vervangen Alleen een patroon kan een categorie beschrijven
Overeenkomende tekst herschikken of opnieuw formatteren Regex vervangen Leg groepen vast en trek stukken eruit en herschik ze
Match bij regelstart of woordgrenzen volgens regel Regex vervangen Ankers en grenzen zijn patroonkenmerken

Hoe werken meerdere regels?

De functie waar ik het meest op leun is het toepassen van meerdere regels tegelijk Echte opruiming is zelden één swap Wanneer ik een client & # 39; kopieer, moet ik misschien een merknaam veranderen, twee consistente spelfouten repareren en een stuk standaard verwijderen, allemaal in hetzelfde blok tekst. Als je dat als vier afzonderlijke passen doet, is dat vervelend en foutgevoelig. Met de tool kun je een rij toevoegen voor elk zoek-en-vervang-paar, en deze in volgorde toepassen, waarbij elke regel inwerkt op de uitvoer van het voorgaande.

Die ordening is het begrijpen waard, want het is een feature, geen ongeluk Zeg regel één vervangt foo van bar, en regel twee vervangt bar van baz. Omdat regel twee draait op het resultaat van regel één, tekst die begon als foo eindigt als baz. Meestal zijn uw regels onafhankelijk en doet de volgorde er niet toe, maar als ze wel op elkaar inwerken, is het gedrag voorspelbaar: van boven naar beneden, elk op het vorige resultaat. De tool laat je ook een telling zien voor elke regel, zodat je kunt bevestigen dat regel drie ergens mee overeenkwam en daar niet niets zit te doen vanwege een typefout in de zoekterm.

Wat doen hele-woord en case opties?

Twee opties behandelen de gevallen waarin een gewone ruil te bot is.

Gevalgevoeligheid beslist of Cat, CAT, en cat zijn hetzelfde woord of drie verschillende Het is standaard uitgeschakeld, omdat de meeste opruiming een term wil vangen, ongeacht hoe deze met een hoofdletter is geschreven. Zet deze aan als de hoofdletter het hele punt is: wanneer u de ene spelling van een naam wilt wijzigen zonder een andere aan te raken, of wanneer u met code werkt waar value en Value zijn verschillende identifiers.

Whole-word matching beslist of je zoekterm op zichzelf moet staan in plaats van in een langer woord te zitten Dit is de optie die je redt van de klassieke find-and-replace ramp Als je vervangt cat van dog zonder dat het hele woord overeenkomt, draai je ook category per dogegory en scatter per sdogter. Met het matchen van hele woorden aan, alleen het op zichzelf staande woord cat wordt vervangen en de langere woorden worden met rust gelaten Het gereedschap detecteert woordgrenzen met behulp van Unicode letters en cijfers in plaats van de definitie die alleen voor ASCII geldt, dus een woord met accenten zoals café wordt behandeld als een enkel woord en de grenzen ervan worden correct gevonden, wat een naïeve implementatie is met behulp van de klassieker \b grens zou verkeerd worden.

Er is hier een breder punt over hoe teksthulpmiddelen Unicode moeten respecteren, waar ik in de tekst op inga Handleiding voor teksthulpmiddelen: tekst behandelen als bytes in plaats van als door de gebruiker waargenomen tekens is waar een verrassend aantal toolbugs vandaan komt.

Hoe ik het in echt werk gebruik

Er komen steeds weer een paar patronen naar voren. Wanneer ik tekst uit een PDF of e-mail plak, komt deze vaak met een term die inconsistent is geschreven, en één letterlijke regel repareert elke instantie. Wanneer ik een client migreer en #39;s inhoud, heb ik een stapel regels opgezet voor de merknaam, het oude domein en een paar terugkerende zinnen, en voer ze allemaal tegelijk uit. Wanneer ik gegevens opschoon voordat ik deze importeer, gebruik ik regels om een herhaald voorvoegsel of een verdwaald markeringsteken uit te halen, en deze te vervangen door niets, wat slechts een regel is met een lege vervanging.

Het past natuurlijk bij de andere tekstgereedschappen Ik vlak vaak geplakte tekst af met regelonderbrekingen verwijderen eerst, dan uitvoeren zoeken en vervangen op het resultaat Wanneer de taak is echt over het veranderen van de vorm van woorden in plaats van het verwisselen van hen, de case converter past beter, en als ik een lijst ontdubbel, reik ik naar de regelverwijderaar dupliceren in plaats daarvan. Weten welk gereedschap voor welke taak de helft van de snelheid is, en daar is een breder overzicht van in de Productiviteitstools voor ontwikkelaar guide.

Het laatste, en de reden dat ik deze heb gebouwd om in de browser te draaien, is privacy De tekst die je in een find-and-replace tool plakt is vaak een concept, een client' s ongepubliceerde kopie, een transcript, of data die je niet zakelijk hebt uploaden naar een willekeurige server Alles wat deze tool doet gebeurt in JavaScript op je eigen machine Niets wordt verzonden, gelogd of opgeslagen, en je kunt het bevestigen door de verbinding met het netwerk te verbreken en te kijken hoe de tool blijft werken.

Een uitgewerkt voorbeeld: een product hernoemen op een pagina

Laat me het idee met meerdere regels concreet maken, omdat het het deel is dat mensen onderbenut laten zien Zeg een client die een nieuwe naam heeft gekregen van "QuickBooks Lite" naar "Ledgerly, & quot; verplaatst van oldsite.com tegen ledgerly.app, en hun oude exemplaar bleef spelling & quot; e-mail" met een koppelteken terwijl de nieuwe stijlgids " email." Dat zijn drie onafhankelijke wijzigingen, en ik zou ze als drie regels in één keer instellen in plaats van drie reizen door de tool.

Regel één vindt QuickBooks Lite en vervangt het door Ledgerly. Regel twee vindt oldsite.com en vervangt het door ledgerly.app; merk op dat de punten in beide domeinen hier letterlijk zijn, dus ik hoef nergens aan te ontsnappen, terwijl een regex-tool dat wel zou doen oldsite.com als matching oldsiteXcom ook. Regel drie vindt e-mail en vervangt het door email. Ik plak de pagina, voer ze alle drie uit, en de telling naast elke regel vertelt me dat de merknaam negen keer is veranderd, het domein vier keer is veranderd en dat de koppeltekenfix twee keer is geraakt. Als regel drie nul liet zien, zou ik weten dat de kopie niet de spelling met koppelteken bevatte en dat ik de regel kon laten vallen.

De tellingen zijn de stille held van deze workflow Zonder hen vertrouw je erop dat elke regel zijn werk heeft gedaan; bij hen krijg je onmiddellijk feedback dat een zoekterm goed of fout was Een nul waar je matches verwachtte is bijna altijd een typefout in het zoekveld of een mismatch met hoofdletters die je kunt oplossen door de gevoeligheid van de hoofdletter te schakelen.

Hoe werkt de matching?

Het is de moeite waard om iets te weten over wat er onder de motorkap gebeurt, omdat het een gedrag verklaart dat je anders misschien verrassend zou vinden. Het gereedschap scant de tekst van links naar rechts. Bij elke positie controleert het of uw zoekterm overeenkomt met het begin. Als dat zo is, en aan een hele woordvoorwaarde is voldaan, schrijft het de vervanging en springt voorbij de overeenkomende tekst. Als dat niet het geval is, kopieert het één teken naar voren en gaat het verder met één. Daarom is vervanging niet recursief binnen één enkele regel: wanneer het de vervanging schrijft, blijft het er achter scannen, niet erin, dus vervangen aa van a in de string aaa geeft je aa in plaats van helemaal in te storten a. Als je de ineenstorting wilt, voer je de regel twee keer uit, wat precies is wat een tweede regel met dezelfde vondst en vervanging doet.

Case-ongevoelige matching wordt van karakter tot karakter gedaan in plaats van eerst de hele string lager te plaatsen Dat klinkt als een implementatiedetail, maar het is belangrijk voor de juistheid: sommige tekens veranderen van lengte als ze een lagere behuizing hebben, en het vergelijken van hele strings met een lagere behuizing zou de posities uit de lijn halen en de uitvoer corrumperen. Als je één teken tegelijk vergelijkt, blijft elke index eerlijk. De grenzen van hele woorden worden onmiddellijk voor en na een wedstrijd gecontroleerd aan de hand van de tekens, waarbij elke Unicode-letter of -nummer wordt behandeld als onderdeel van een woord, waardoor geaccentueerde en niet-Latijnse scripts zich gedragen zoals je zou verwachten.

Niets van dit alles is iets waar je aan moet denken in dagelijks gebruik Maar het is het verschil tussen een tool die stilletjes het verkeerde doet op een edge case en een die je kunt vertrouwen met een client' s kopie, en het is de reden dat ik liever een speciaal gebouwde letterlijke replacer zou gebruiken dan tekst in een regex box te plakken en hoop dat mijn zoekterm geen speciaal teken bevatte.

Veelgestelde vragen

Hoe vind en vervang ik tekst zonder regex te gebruiken?

Plak je tekst in de tool, typ de exacte zin die je moet vinden en de exacte zin waarmee je deze moet vervangen, en voer deze uit De zoekopdracht is letterlijk, dus elk teken dat je typt wordt gematcht als zichzelf en niets hoeft te ontsnappen Elke gebeurtenis wordt verwisseld en je krijgt een telling van hoeveel wijzigingen er zijn aangebracht, allemaal in je browser zonder dat er iets is geüpload.

Kan ik meerdere verschillende woorden tegelijk vervangen?

Ja. voeg een rij toe voor elk zoek-en-vervang-paar en de tool past ze achtereenvolgens toe, waarbij elk ervan inwerkt op het resultaat van de regel ervoor. Dit is hoe je een merk hernoemt, twee spelfouten repareert en een stuk boilerplate in één keer verwijdert, en elke regel toont zijn eigen vervangingstelling, zodat je kunt zien dat deze overeenkomt.

Wat is het verschil tussen dit en een regex vervang tool?

Deze tool komt letterlijk overeen met uw zoekterm, dus een punt komt alleen overeen met een punt en een dollarteken, alleen met een dollarteken, zonder patroonsyntaxis om te leren en zonder onbedoelde overmatching. Een regex-vervangingstool behandelt de zoekterm als een patroon met jokertekens, ankers en capture-groepen, wat je nodig hebt om een categorie dingen te matchen, zoals elk jaar of elk e-mailadres. Gebruik letterlijk wanneer je precies kunt typen wat je wilt; gebruik regex wanneer u een vorm matcht.

Hoe stopt het matchen van hele woorden ongewenste vervangingen?

Bij het matchen van hele woorden wordt de zoekterm alleen vervangen als deze op zichzelf staat in plaats van in een langer woord. Vervangen cat dan verandert cat Maar bladeren category, scatter, en located onaangeroerd De tool maakt gebruik van Unicode-bewuste grenzen, dus met geaccentueerde en niet-Engelse woorden wordt correct omgegaan in plaats van op de verkeerde plaats te worden gesplitst.

Zal mijn regeleinden of spatiëring vinden en vervangen?

Nee Alleen de tekens waarnaar u zocht worden gewijzigd Regelonderbrekingen, inspringing, spatiëring en interpunctie rond uw overeenkomsten blijven precies zoals ze waren Als de vervanging langer of korter is dan het origineel, verschuift de omringende tekst op natuurlijke wijze, maar wordt niets anders opnieuw geformatteerd of opnieuw gevlochten.

Is er een limiet aan hoeveel tekst ik kan verwerken?

Er is geen vaste limiet buiten uw browser' s geheugen Omdat het werk op uw apparaat gebeurt in plaats van op een server, verwerken blokken van honderdduizenden tekens vrijwel onmiddellijk en is er geen uploadgroottekap. Voor iets ter grootte van een heel boek merk je misschien een korte pauze, maar gewone documenten zijn in feite direct.

Wordt mijn tekst ergens geüpload of opgeslagen?

Nee De tekst wordt verwerkt door JavaScript in uw browser en wordt nooit verzonden, gelogd of opgeslagen U kunt dit verifiëren door het netwerktabblad te openen terwijl u een vervanging uitvoert, of door de verbinding met internet te verbreken, aangezien de tool offline blijft werken zodra de pagina is geladen Dat is de reden om een client-side tool te gebruiken voor concepten, clientkopie en alles wat privé is.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!