title: How to split a character column into multiple columns in R
body: <p>I have a dataframe <code>x</code>:</p>
  
  <pre><code>dput(x)
  structure(list(District = structure(c(6L, 6L, 6L, 6L, 6L, 6L), .Label = c("District - Central (06)", 
  "District - East (04)", "District - New Delhi (05)", "District - North (02)", 
  "District - North East (03)", "District - North West (01)", "District - South (09)", 
  "District - South West (08)", "District - West (07)"), class = "factor"), 
      Age = structure(c(103L, 1L, 2L, 14L, 25L, 36L), .Label = c("0", 
      "1", "10", "100+", "11", "12", "13", "14", "15", "16", "17", 
      "18", "19", "2", "20", "21", "22", "23", "24", "25", "26", 
      "27", "28", "29", "3", "30", "31", "32", "33", "34", "35", 
      "36", "37", "38", "39", "4", "40", "41", "42", "43", "44", 
      "45", "46", "47", "48", "49", "5", "50", "51", "52", "53", 
      "54", "55", "56", "57", "58", "59", "6", "60", "61", "62", 
      "63", "64", "65", "66", "67", "68", "69", "7", "70", "71", 
      "72", "73", "74", "75", "76", "77", "78", "79", "8", "80", 
      "81", "82", "83", "84", "85", "86", "87", "88", "89", "9", 
      "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", 
      "Age not stated", "All ages"), class = "factor"), Total = c(3656539L, 
      56131L, 58644L, 63835L, 63859L, 64945L), Rural = c(213950L, 
      3589L, 3757L, 4200L, 4102L, 4223L), Urban = c(3442589L, 52542L, 
      54887L, 59635L, 59757L, 60722L)), .Names = c("District", 
  "Age", "Total", "Rural", "Urban"), row.names = c(NA, 6L), class = "data.frame")
  </code></pre>
  
  <p>I want to split <code>District</code> column to extract the name of the district into a new column <code>Name</code>. E.g. "District - North West (01)" should split to give "North West".
  I tried <code>str_split_fixed</code> and got:</p>
  
  <pre><code>x
                      District      Age   Total  Rural   Urban 1    name
  1 District - North West (01) All ages 3656539 213950 3442589      North West (01)
  2 District - North West (01)        0   56131   3589   52542      North West (01)
  3 District - North West (01)        1   58644   3757   54887      North West (01)
  4 District - North West (01)        2   63835   4200   59635      North West (01)
  5 District - North West (01)        3   63859   4102   59757      North West (01)
  6 District - North West (01)        4   64945   4223   60722      North West (01)
  </code></pre>
  
  <p>I try using the same function again to split <code>name</code> column to separate the district name from code, but it gives me following error:</p>
  
  <blockquote>
    <p>Error in stri_split_regex(string, pattern, n = n, simplify = TRUE, opts_regex = attr(pattern,  : 
      Incorrectly nested parentheses in regexp pattern. (U_REGEX_MISMATCHED_PAREN)</p>
  </blockquote>
  
  <p>Is there a way to split the character column into multiple columns based on a pattern in single function?</p>