|
Letzte
Bearbeitung dieses Dokuments: |
Code
Erklärungen
und Anwendungsbeispiele
Verwandte
Dokumentation
package
js_base.utilities;
/**
*
* @author kurt(at)javascout[dot]biz
* @date
2010-02-24
*
* @description
* de:
*
Klasse mit statischen Methoden zum Untersuchen und Verändern
von
* Zeichenketten (Strings).
* en:
*
Class with static methods that provide services to inspect and
manipulate
* Strings.
*
*
@change-log
* when who why
*
--------------------------------------------------------
*
*/public
class
JSBS_StringServices
{
/*
*
--------------------
* de:
* Methode zum
Vergleichen von 2 Zeichenketten von Beginn an (index 0) und zum
*
zurück liefern des Teils der in beiden Zeichenketten gleich
ist.
* Diese Methode ist hilfreich zum Prüfen ob
der Anwender einen Vorgabewert
* (z.B. das Verzeichnis
eine Dateisystems) belassen oder erweitert hat
* oder
ob er einen komplett anderen Wert ausgewählt
hat.
* parmStringToProcess ist jene Zeichenkette die
untersucht werden soll.
* parmStringToCompare ist jene
Zeichenkette die als Vergleich herangezogen wird.
* en:
*
Method to compare 2 Strings from the beginning (index 0) and return
the part
* that is equal in both Strings.
* This
method is useful to check if the user kept a default value (e.g. a
directory
* of a file-system) and extended it or
selected a completely different value.
* parmStringToProcess
is the String that should be inspected.
* parmStringToCompare
is the String that is the reference for the comparison. */
public
static
String
getMatchingPart(String parmStringToProcess, String
parmStringToCompare) {
/*
*
* de:
* Prüfen ob die Parameter gültig
sind; sonst einen 'null'-Wert zurück liefern.
* en:
*
Check if the parameters ar valid; otherwise return 'null'-value.
*/
if
(parmStringToProcess
==
null
)
return
null
;
if
(parmStringToCompare
==
null
)
return
null
;
/*
*
de:
* Variablen für das Vergleichen einzelner Zeichen
in beiden Zeichenketten.
* en:
* Variables to
compare single characters within both Strings. */
char
chrProcess;
char
chrCompare;
/*
*
de: Anzahl der Zeichen (Länge) für beide Zeichenketten
ermitteln.
* en: Get the number of characters (length) of
both Strings. */
int
intProcessedLength
= parmStringToProcess.length();
int
intComparedLength
= parmStringToCompare.length();
/*
*
de: Kleinere Länge für die folgende for-Schleife
verwenden.
* en: Use the shorter length for the coming
for-loop. */
if
(intProcessedLength
> intComparedLength) intProcessedLength = intComparedLength;
/*
*
de:
* In der for-Schleife die beiden Zeichenketten Zeichen
für Zeichen vergleichen.
* en:
* Use the
for-loop to compare both Strings character by character. */
for
(
int
intIndex
= 0; intIndex < intProcessedLength; intIndex++)
{
chrProcess =
parmStringToProcess.charAt(intIndex);
chrCompare
= parmStringToCompare.charAt(intIndex);/*
*
de:
* Wenn der erste Unterschied in den Zeichenketten
auftritt dann den bis hierher
* gleichen Teil der
Zeichenketten an die aufrufende Methode zurück liefern.
*
en:
* At the first difference of both string the part that
is identical is returned
* to the calling method.
*/
if
(chrProcess
!= chrCompare)
return
parmStringToProcess.substring(0,
intIndex - 1
)
;
}/*
*
de:
* Einer der beiden Zeichenketten ist komplett in der
anderen enthalten.
* Diesen Teil an die aufrufende Methode
zurück liefern.
* en:
* One of the both
Strings is contained within the other as a whole.
* Return
this part to the calling method. */
return
parmStringToProcess.substring(0,
intProcessedLength
)
;
}/*
*
--------------------
* de:
* Methode zum
Vergleichen von 2 Zeichenketten von Beginn an (index 0) und zum
*
zurück liefern des Teils, der in der im Parameter
parmStringToProcess
* unterschiedlich ist.
* Diese
Methode ist hilfreich zum Prüfen ob der Anwender einen
Vorgabewert
* (z.B. das Verzeichnis eine Dateisystems)
erweitert hat und welcher Teil
* der Zeichenkette die
Erweiterung ist.
* parmStringToProcess ist jene
Zeichenkette die untersucht werden soll.
* parmStringToCompare
ist jene Zeichenkette die als Vergleich herangezogen wird.
*
en:
* Method to compare 2 Strings from the beginning (index
0) and return the part
* that is different within the
Parameter parmStringToProcess.
* This method is useful
to check if the user extended a default value (e.g. a directory
* of
a file-system) and to get the part of the String that represents the
extension.
* parmStringToProcess is the String that
should be inspected.
* parmStringToCompare is the
String that is the reference for the comparison. */
public
static
String
getDismatchingPart(String parmStringToProcess, String
parmStringToCompare) {
/*
*
* de:
* Prüfen ob die Parameter gültig
sind; sonst einen 'null'-Wert zurück liefern.
* en:
*
Check if the parameters ar valid; otherwise return 'null'-value.
*/
if
(parmStringToProcess
==
null
)
return
null
;
if
(parmStringToCompare
==
null
)
return
null
;
/*
*
de:
* Variablen für das Vergleichen einzelner Zeichen
in beiden Zeichenketten.
* en:
* Variables to
compare single characters within both Strings. */
char
chrProcess;
char
chrCompare;
/*
*
de: Anzahl der Zeichen (Länge) für beide Zeichenketten
ermitteln.
* en: Get the number of characters (length) of
both Strings. */
int
intProcessedLength
= parmStringToProcess.length();
int
intComparedLength
= parmStringToCompare.length();
/*
*
de: Kleinere Länge für die folgende for-Schleife
verwenden.
* en: Use the shorter length for the coming
for-loop. */
if
(intProcessedLength
> intComparedLength) intProcessedLength = intComparedLength;
/*
*
de:
* In der for-Schleife die beiden Zeichenketten Zeichen
für Zeichen vergleichen.
* en:
* Use the
for-loop to compare both Strings character by character. */
for
(
int
intIndex
= 0; intIndex < intProcessedLength; intIndex++)
{
chrProcess =
parmStringToProcess.charAt(intIndex);
chrCompare
= parmStringToCompare.charAt(intIndex);/*
*
de:
* Wenn der erste Unterschied in den Zeichenketten
auftritt dann den unterschiedlichen
* (hinteren) Teil der
Zeichenkette in parmStringToCompare an die aufrufende Methode zurück
liefern.
* en:
* At the first difference of both
string the different part of the String passed in
*
parmStringToCompare is returned to the calling method. */
if
(chrProcess
!= chrCompare)
return
parmStringToProcess.substring(intIndex,
intProcessedLength
)
;
}/*
*
de:
* Die Zeichenkette im Parameter parmStringToCompare ist
vollständig in der Zeichenkette
* des Parameters
parmStringToProcess enthalten.
* Etwa vorhandenen weiteren
Teil aus parmStringToProcess an die aufrufende Methode zurück
liefern.
* en:
* The String in parameter
parmStringToCompare is contained within the String in parameter
*
parmStringToProcess as a whole.
* Return the excess part (if
any) of String in parameter parmStringToProcess. */
return
parmStringToProcess.substring(intComparedLength,
parmStringToProcess.length()
)
;
}
}
xxx
Dokument |
Inhalt |
Dieser
Leitfaden enthält die notwendigen Tätigkeiten für
die Entwicklung eines StartFrame (auch als Command-Center
bekannt). |