Test string behavior under different locales: sort order (Intl.Collator), case folding (toLocaleLowerCase / Upper), and accent-insensitive compare. Covers locale-specific rules like Turkish İ/ı, German ß, Estonian w/v, Spanish ñ.
Sort order (Intl.Collator)
Case folding
How to Use String Locale Tester in 3 Steps
Configure. Paste a list of strings (one per line). Pick target locale from 400+ supported IANA tags.
Process. See sort order (Intl.Collator default / accent-insensitive / case-insensitive), case results (lower, upper, title), and pair-wise comparison with explanations.
Export. Switch locales to compare — 'İstanbul' in en-US vs tr-TR shows the case-folding bug. 'Österreich' sorts in German vs Swedish differently. Critical for i18n testing.
Why String Locale Tester on Pixlane
Strings behave differently in different locales — a bug-hunting minefield. 'İstanbul'.toLowerCase() returns 'i̇stanbul' in English locale (adds combining dot) but 'istanbul' correctly in Turkish. 'ä' sorts before 'z' in German but after in Swedish. Pixlane's Locale Tester lets you paste strings and see sort order, equality, and case results across any IANA locale, including the commonly-missed Turkish, German, Azerbaijani, Lithuanian, Estonian, and Greek special cases.
Intl.Collator Sort — Locale-aware sort using Unicode CLDR collation — the same algorithm native OSs use. Three sensitivity modes: base (accent-insensitive), accent, variant. Pick what fits your use case.
Locale Case Folding — toLocaleLowerCase('tr') for Turkish İ/ı, toLocaleUpperCase('de') for German ß → SS, toLocaleLowerCase('el') for Greek final sigma. The locale-correct behavior users expect.
Side-by-Side Locales — Compare the same strings under en-US vs tr-TR vs de-DE simultaneously. Instantly see where locale choices change sort order, case, or equality.
Test Common Pitfalls — Built-in test set covering Turkish İ/ı, German ß, Azerbaijani, Lithuanian accent rules, Greek final sigma, Estonian w/v — the edge cases that break naive implementations.
Frequently Asked Questions
What is Intl.Collator?
Built-in JavaScript API for locale-aware string comparison. Uses Unicode CLDR data to produce correct sort orders per language. Much better than .localeCompare() for sorting large lists — also supports case, accent, and punctuation sensitivity controls.
Why does 'İ'.toLowerCase() produce two characters?
In Turkish, uppercase İ is 'I with dot above'. Lowercase is just 'i' (which has its own dot). In English locale, toLowerCase lowercases the base I but adds a combining dot above to preserve the original 'I'-ness, producing 'i̇' (2 codepoints). In Turkish locale, toLocaleLowerCase('tr') correctly produces 'i' (1 codepoint).
Is my data private?
Yes. All string comparisons use native Intl APIs in your browser. Test data — which may include user input or proprietary content — never leaves your device.
Is this tool free?
Yes. String Locale Tester on Pixlane is completely free with no signup required.