Overview
The string analysis module (string-analysis.js) performs multiple operations:
- Name extraction and identification
- Prefix and suffix detection
- Number and symbol extraction
- Word permutations and combinations
- Common word identification by language
- Age estimation from patterns
- Leetspeak conversion
Name Analysis
The analyzer uses dictionaries of male and female names to identify name components within usernames.Name Extraction
Fromstring-analysis.js:91-108, the analyzer searches for known names:
Example
Prefix Detection
Identifies common username prefixes like “the”, “real”, “official”, etc. Fromstring-analysis.js:82-90:
Prefix detection only matches at the start of the string (position 0) to avoid false positives.
Symbol and Number Extraction
Symbol Detection
Fromstring-analysis.js:172-180, extracts special characters:
Number Extraction
Fromstring-analysis.js:182-190, identifies numeric patterns:
Example
String Splitting Techniques
Split by Comma
Fromstring-analysis.js:142-150, handles comma-separated searches:
Split by Uppercase
Fromstring-analysis.js:152-160, detects camelCase patterns:
Split by Alphabet
Fromstring-analysis.js:162-170, extracts all alphabetic sequences:
Leetspeak Conversion
Converts common number-to-letter substitutions used in usernames. Fromstring-analysis.js:192-216:
Example
Word Permutations
The analyzer uses WordsNinja to split concatenated words and identify meaningful components. Fromstring-analysis.js:218-223:
Example
Language Detection
Identifies the language origin of words found in usernames. Fromstring-analysis.js:30-52:
Example Output
Age Estimation
Attempts to estimate age from numeric patterns in usernames. Fromstring-analysis.js:225-270:
Example
Analysis Workflow
The complete string analysis follows this sequence:- Convert Numbers: Apply leetspeak conversion
- Find Symbols: Extract special characters
- Find Numbers: Extract numeric sequences
- Split Patterns: Apply comma, uppercase, and alphabet splitting
- Analyze String: Match against name and prefix dictionaries
- Word Ninja: Split concatenated words
- Language Detection: Identify word origins
- Age Estimation: Extract possible age information
Multi-Profile Analysis
Social Analyzer supports comma-separated usernames for correlation analysis:Practical Examples
Example 1: Complex Username
Example 2: Leetspeak Username
Example 3: Multi-word Username
Integration with Detection
String analysis results feed into the profile detection process by:- Generating username variations to search
- Identifying related profiles through name matching
- Providing context for detected profiles
- Enabling correlation across multiple usernames