Skip to content

Instantly share code, notes, and snippets.

View sergchil's full-sized avatar

Sergey Chilingaryan sergchil

View GitHub Profile
@sergchil
sergchil / FlattenArraysTetst.java
Created December 4, 2017 18:07
Flatten nested arrays
public static void main() {
Object[] array1 = new Object[]{3}; // [3]
Object[] array2 = new Object[]{1, 2, array1}; // [ 1, 2, [3] ]
Object[] nestedArrays = new Object[]{array2, 4, null}; // [ [ 1, 2, [3] ] 4 ]
ArrayList<Integer> flatOutput = new ArrayList<>();
try {
flatten(nestedArrays, flatOutput);
System.out.println("flatOutput = " + flatOutput);
@sergchil
sergchil / EmojiRegex.java
Last active March 17, 2022 09:01
Regex for finding all emojis in string including surrogate pairs
public static final String sEmojiRegex = "(?:[\\u2700-\\u27bf]|" +
"(?:[\\ud83c\\udde6-\\ud83c\\uddff]){2}|" +
"[\\ud800\\udc00-\\uDBFF\\uDFFF]|[\\u2600-\\u26FF])[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]|[\\ud83c\\udffb-\\ud83c\\udfff])?" +
"(?:\\u200d(?:[^\\ud800-\\udfff]|" +
"(?:[\\ud83c\\udde6-\\ud83c\\uddff]){2}|" +
"[\\ud800\\udc00-\\uDBFF\\uDFFF]|[\\u2600-\\u26FF])[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe23\\u20d0-\\u20f0]|[\\ud83c\\udffb-\\ud83c\\udfff])?)*|" +