2016-05-27 8 views
0

Ich kann nicht unser wie man Regeln schreiben, in denen Token eine Kombination von Wörtern und Interpunktion beinhalten.Interpunktion in LanguagueTool Regeln

Wie soll ich Interpunktion in LanguageTool Regeln umgehen?

Ich habe online gesucht und versuchte ein paar Dinge ohne Erfolg.

Zum Beispiel beide 1)

<rule id="THAT_AND_THAN_DOT" name="that and than dot"> 
<pattern> 
<token>that</token> 
<token regexp="yes"> 
another.| 
himself.| 
herself.| 
itself.</token> 
</pattern> 
<message>Did you mean <suggestion>than \2.</suggestion>?</message> 
<example correction='than another.'>Yes, better <marker>than another. </marker></example> 
</rule> 

2)

<rule id="THAT_AND_THAN_DOT" name="that and than dot"> 
<pattern> 
<token>that</token> 
<token regexp="yes"> 
another| 
himself| 
herself| 
itself</token> 
<token regexp="yes"> 
[.]</token> 
</pattern> 
<message>Did you mean <suggestion>than \2.</suggestion>?</message> 
<example correction='than another.'>Yes, better <marker>than another. </marker></example> 
</rule> 

und 3)

<rule id="THAT_AND_THAN_DOT" name="that and than dot"> 
<pattern> 
<token>that</token> 
<token regexp="yes"> 
another| 
himself| 
herself| 
itself</token> 
<token regexp="yes"> 
[:punct:]</token> 
</pattern> 
<message>Did you mean <suggestion>than \2.</suggestion>?</message> 
<example correction='than another.'>Yes, better <marker>than another. </marker></example> 
</rule> 

fehlgeschlagen. Auf der anderen Seite

<rule id="THAT_AND_THAN_DOT" name="that and than dot"> 
    <pattern> 
    <token>that</token> 
    <token regexp="yes"> 
    another| 
    himself| 
    herself| 
    itself</token> 
    </pattern> 
    <message>Did you mean <suggestion>than \2.</suggestion>?</message> 
    <example correction='than another.'>Yes, better <marker>than another. </marker></example> 
    </rule> 

funktioniert, wenn auch ohne Berücksichtigung des Punktes, die ich gerne tun würde.

Hinweis: Ich verwende LanguageTool innerhalb Texstudio.

+0

Haben Sie versucht ' (?: ein anderer | sich | selbst | selbst) [.]'? –

+0

@ WiktorStribiżew: Ich habe gerade versucht, es als Teil ' \t \t dass \t (?: anderen | sich | sich | selbst) \t \t Meinten Sie als \ 2 [.]? \t Ja, als ein anderes. \t 'vergeblich. Ich denke nicht, dass es wichtig ist, aber nur für den Fall: Ich benutze 'LanguageTool' in' Texstudio'. –

Antwort

1

Ihr Code in 2) funktioniert fast nur, dass Sie ein Token that im Muster aber than in Ihrem Beispielsatz haben, so wird es nie übereinstimmen, unabhängig von der Interpunktion. Im Allgemeinen erhält Interpunktion ein eigenes Token, so dass es auch ein eigenes Token im Muster haben muss. Sie können Ihre Regeln mit http://community.languagetool.org/ruleEditor/expert testen, es wird bei Problemen auch eine Meldung mit der angewendeten Tokenisierung angezeigt.

+0

Danke für Ihre Antwort. Ich bin mir nicht sicher, ob ich dir folge. Meinst du, es gibt ein 'das' in' Ja, als ein anderes. '? Was ist der Unterschied zwischen dem Beispielsatz in 2) (der nicht funktioniert) und dem in 4) (der funktioniert)? –

+0

Ich bin mir nicht sicher, was Sie mit "funktioniert", aber Nummer 4) funktioniert nicht, wenn in http://community.languagetool.org/ruleEditor/expert eingefügt. Der Beispielsatz enthält "als ein anderes", aber das Muster kann nicht übereinstimmen, da es das Token "das" enthält. Ich schlage vor, dass Sie dieses Online-Formular verwenden, damit wir die gleiche Idee von "funktioniert" und "nicht bestanden" haben. –

+0

Ich verstehe. Ich habe den Weg missverstanden.Mit "4) Arbeiten" meinte ich, dass - zumindest auf meiner Seite mit "LanguageTool" über "Texstudio" - 4) genug war, dass "LanguageTool" Instanzen von "diesem anderen" abfing und die Korrektur "als eine andere" vorschlug. . –

Verwandte Themen