Diskuzní fórum, poradna
?CAD diskuze, rady, výměna zkušeností

|
Odpovědět ![]() |
archiv |
Autor | |
VladaMar ![]() Diskutér ![]() Přihlášen: 31.srp.2010 Lokalita: ČR (HK) Používám: Civil 3D 2012 Stav: Offline Bodů: 22 |
![]() Zasláno: 04.bře.2011 v 14:14 |
Dobrý den, potřeboval bych ve výkresu nahradit text výšky bodů z původních např. "100 00" na "100.00" Rád bych k tomu využil příkaz SRXTEXT, ale z readme nejsem moc chytrý a tak nevím jakou mám použít syntaxy. Uměl by mi někdo poradit? Předem děkuji
|
|
![]() |
|
PepaR ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
CAD/BIM manager ![]() ![]() Přihlášen: 29.lis.2004 Lokalita: ČR (ZL) Používám: ruky a hlavu (občas ;) Stav: Offline Bodů: 6213 |
![]() |
Najít a nahradit text Příkaz: SRXTEXT Popis: Najde a nahradí hledaný řetězec v textech, kótách a atributech bloků. Funkce zahrnuje pokročilé funkce pro vyhledávání a nahrazení jako využití regulárních výrazů, přidání řetězců na začátek nebo konec textů, jednotlivých slov, nahrazení pouze jednoho/prvního výskyt podřetězce, apod. srxTEXT lze využít i pro dávkové nahrazení textů ve více výkresech (pomocí skriptů). Více informací o regulárních výrazech naleznete na webu www.regularnivyrazy.info. Legenda pro instrukce funkce: Search - Regular
expression/Exact string/<Substring>: Hledat – Regulární výrazy/Přesný řetězec/<Podřetězec>: Enter the searched text: Zadejte hledaný text: Enter the replace text: (no replacements will
be done) Zadejte text pro nahrazení: (pokud nic nezadáte, bude funkce pouze vyhledávat) Search Layer/<All>: Hledat v hladině/<Ve všech hladinách>: Search Selected/<All>: Hledat ve výběru/<V celém výkresu>: Number of searched entities: ?? Počet nalezených objektů: ?? Najít a nahradit text pomocí CSV Příkaz: SRXTEXTCSV Popis: Najde a nahradí hledaný řetězec v textech, kótách a atributech bloků podle definicí v souboru CSV. Funkce zahrnuje pokročilé funkce pro vyhledávání a nahrazení jako využití regulárních výrazů, přidání řetězců na začátek nebo konec textů, jednotlivých slov, nahrazení pouze jednoho/prvního výskyt podřetězce, apod. Text bude nahrazen podle tabulky v souboru srxtext.csv, který naleznete ve složce POYRYmenu\Menu\Fce. Soubor CSV lze upravovat např. pomocí programu Microsoft Excel. srxTEXT lze využít i pro dávkové nahrazení textů ve více výkresech (pomocí skriptů). Formát zápisu v souboru CSV: bolt,"nut" … řetězec bolt bude nahrazen řetězcem nut male,"female" … řetězec male bude nahrazen řetězcem femaleUpravil PepaR - 04.bře.2011 v 14:37 |
|
![]() |
|
Vladimír Michl ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Moderátor ![]() ![]() ARKANCE Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Implementujeme řešení Autodesk Stav: Offline Bodů: 22004 |
![]() |
Regulární výrazy jsou mocné, ale trochu zamotané a zápis některých řídících znaků pro LISP také, ale toto by mělo fungovat:
vyhledat: ^\([0-9]+\) \([0-9]+\)$
nahradit: \1.\2
Přeloženo do "lidštiny": od začátku textu hledej libovolně dlouhou skupinu složenou jen z číslic (zapamatuj si ji), následovanou mezerou a další takovou skupinou (zapamatuj si ji), která je na konci řádku. Místo nich zapiš první zapamatovaný řetězec, tečku a druhý zapamatovaný...
|
|
![]() |
|
VladaMar ![]() Diskutér ![]() Přihlášen: 31.srp.2010 Lokalita: ČR (HK) Používám: Civil 3D 2012 Stav: Offline Bodů: 22 |
![]() |
Děkuji za bleskovou odpověď, nicméně daný postup bohužel nefunguje. Již po zadání první části (co hledat) mi Autocad 2011 píše "Neplatné klíčové slovo"
Upravil VladaMar - 04.bře.2011 v 15:05 |
|
![]() |
|
Vladimír Michl ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Moderátor ![]() ![]() ARKANCE Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Implementujeme řešení Autodesk Stav: Offline Bodů: 22004 |
![]() |
A zvolil jste v prvním dotazu příkazu SRXTEXT volbu "Regular expression"?
|
|
![]() |
|
VladaMar ![]() Diskutér ![]() Přihlášen: 31.srp.2010 Lokalita: ČR (HK) Používám: Civil 3D 2012 Stav: Offline Bodů: 22 |
![]() |
Máte pravdu, nezvolil. Nyní jsem jsem provedl vše správně, avšak výsledek žádný. Zasílám pro kontrolu záznam
Příkaz: SRXTEXT Search - Regular expression/Exact string/<Substring>: r Enter the searched text [Enter to select a text object]: ^\([0-9]+\) \([0-9]+\)$ Enter the replace text: \1.\2 Search Layer/<All>: Search Selected/<All>: Number of searched entities: 1172 Number of found/replaced entities: 0/0 Upravil VladaMar - 04.bře.2011 v 15:47 |
|
![]() |
|
Vladimír Michl ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Moderátor ![]() ![]() ARKANCE Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Implementujeme řešení Autodesk Stav: Offline Bodů: 22004 |
![]() |
Tohle vypadá dobře. Zřejmě tedy ty texty neodpovídají hledané masce. Je například mezi oběma skupinami čísel opravdu jen jedna mezera? Není mezera na začátku nebo na konci řetězce?
|
|
![]() |
|
VladaMar ![]() Diskutér ![]() Přihlášen: 31.srp.2010 Lokalita: ČR (HK) Používám: Civil 3D 2012 Stav: Offline Bodů: 22 |
![]() |
Máte pravdu, ještě byla v textu mezera na konci řetězce. Tedy např. "100 00 ". Nakonec se mi to tedy přejmenovat vše povedlo, děkuji za rady
|
|
![]() |
|
Vladimír Michl ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Moderátor ![]() ![]() ARKANCE Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Implementujeme řešení Autodesk Stav: Offline Bodů: 22004 |
![]() |
OK. Pokud je začátek a konec řetězce nejistý, stačí vynechat ty znaky ^ a $.
|
|
![]() |
Pro technickou podporu CAD
kontaktujte Helpdesk
Odpovědět ![]() |
|
Přejít na fórum | Oprávnění fóra ![]() Nemůžete vytvářet nová témata v tomto fóru Nemůžete odpovídat na témata v tomto fóru Nemůžete vymazávat vaše příspěvky v tomto fóru Nemůžete upravovat vaše příspěvky v tomto fóru Nemůžete vytvářet ankety v tomto fóru Nemůžete hlasovat v anketách v tomto fóru |
Stránka byla vygenerována za 0,469 sekund.