R/get_variable_regular_expressions.R

Defines functions get_variable_regular_expressions

Documented in get_variable_regular_expressions

#' get_variable_regular_expressions
#'
#' @return returns a list of vectors, each vector contains regular expressions that will find a numerical value as their first capture group +/- the units as the second capture group
#' @export
#' @examples get_variable_regular_expressions()
#'
get_variable_regular_expressions <- function(){

  regexs <- list(
    height = c("height\\s*(?<value>\\d+\\.?\\d*)\\s*(?<units>[A-z]*)"),
    weight = c("weight\\s*(?<value>\\d+\\.?\\d*)\\s*(?<units>[A-z]*)"),
    bsa = c("body surface area\\s*(?<value>\\d+\\.?\\d*)\\s*(?<units>[A-z0-9]*)"),
    bmi = c("body mass index\\s*(?<value>\\d+\\.?\\d*)\\s+"),
    sbp = c("bp on scanning[\\s=]*(?<value>\\d+)\\s*\\/\\s*\\d+\\s*"),
    dbp = c("bp on scanning[\\s=]*\\d+\\s*\\/\\s*(?<value>\\d+)\\s*"),
    vert_art_right = c("vertebral arteries:?\\s*right:?(?<value>\\d+\\.?\\d*)\\s*(?<units>[A-z]*)\\s"),
    vert_art_left = c("vertebral arteries[\\sA-z0-9.:]*left:?\\s*(?<value>\\d+\\.?\\d*)\\s*(?<units>[A-z]*)\\s"),
    r_cca_size = c("right common carotid artery\\s*size\\s*(?<value>\\d+\\.?\\d*)\\s*\\(?(?<units>[A-z]*)\\)?",
                   "right[\\s]*common[\\s]*carotid[\\s]*artery[\\s]*size[\\s]*\\((?<units>[A-z]*)\\)\\s*(?<value>\\d+\\.?\\d*)"),
    r_cca_vmax = c("right common carotid artery[\\sA-z0-9().]*max velocity\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?",
                   "right[\\s]*common[\\s]*carotid[\\s]*artery[\\sA-z0-9().]*max[\\s]*velocity[\\s]*\\(?(?<units>[A-z\\/]*)\\)?[\\s]*(?<value>\\d+\\.?\\d*)"),
    r_cca_antflow = c("right common carotid artery[\\sA-z0-9()\\.\\/]*antegrade flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    r_cca_effflow = c("right common carotid artery[\\sA-z0-9()\\.\\/]*effective flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    r_cca_splitflow = c("right common carotid artery[\\sA-z0-9()\\.\\/]*split flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/%]*)\\)?"),
    l_cca_size = c("left common carotid artery\\s*size\\s*(?<value>\\d+\\.?\\d*)\\s*\\(?(?<units>[A-z]*)\\)?",
                   "left[\\s]*common[\\s]*carotid[\\s]*artery[\\s]*size[\\s]*\\((?<units>[A-z]*)\\)\\s*(?<value>\\d+\\.?\\d*)"),
    l_cca_vmax = c("left common carotid artery[\\sA-z0-9()\\.]*max velocity\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    l_cca_antflow = c("left common carotid artery[\\sA-z0-9()\\.\\/]*antegrade flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    l_cca_effflow = c("left common carotid artery[\\sA-z0-9()\\.\\/]*effective flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    l_cca_splitflow = c("left common carotid artery[\\sA-z0-9()\\.\\/]*split flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/%]*)\\)?"),
    r_va_size = c("right vertebral artery\\s*size\\s*(?<value>\\d+\\.?\\d*)\\s*\\(?(?<units>[A-z]*)\\)?"),
    r_va_vmax = c("right vertebral artery[\\sA-z0-9()\\.]*max velocity\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    r_va_antflow = c("right vertebral artery[\\sA-z0-9()\\.\\/]*antegrade flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    r_va_effflow = c("right vertebral artery[\\sA-z0-9()\\.\\/]*effective flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    r_va_splitflow = c("right vertebral artery[\\sA-z0-9()\\.\\/]*split flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/%]*)\\)?"),
    l_va_size = c("left vertebral artery\\s*size\\s*(?<value>\\d+\\.?\\d*)\\s*\\(?(?<units>[A-z]*)\\)?"),
    l_va_vmax = c("left vertebral artery[\\sA-z0-9()\\.]*max velocity\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    l_va_antflow = c("left vertebral artery[\\sA-z0-9()\\.\\/]*antegrade flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    l_va_effflow = c("left vertebral artery[\\sA-z0-9()\\.\\/]*effective flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/]*)\\)?"),
    l_va_splitflow = c("left vertebral artery[\\sA-z0-9()\\.\\/]*split flow\\s*(?<value>\\d+\\.?\\d*)\\(?(?<units>[A-z\\/%]*)\\)?")
    # tot_cerebral_flow = "total cerebral flow[\\s=]*(\\d+\\.?\\d*)\\s*(?<units>[A-z\\/]*)",
    # l_renal_art_size = "renal arteries[\\s:]*l\\s*=\\s*(\\d+\\.?\\d*)\\s*(?<units>[A-z\\/]*)",
    # r_renal_art_size = "renal arteries[\\s:A-z0-9\\.=]*r\\s*=\\s*(\\d+\\.?\\d*)\\s*(?<units>[A-z\\/]*)",
    # la_area_4ch = "left atrial area \\(4ch\\) =\\s*(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # la_idx_area_4ch = "left atrial area \\(4ch\\)[\\s=\\w]*cm2[\\s=]*(\\d+\\.?\\d*) (cm2\\/m2)",
    # la_area_2ch = "left atrial area \\(2ch\\) =\\s*(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # la_idx_area_2ch = "left atrial area \\(2ch\\)[\\s=\\w]*cm2[\\s=]*(\\d+\\.?\\d*) (cm2\\/m2)",
    # la_len_4ch = "la length \\(4ch\\) =\\s*(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # la_len_2ch = "la length \\(2ch\\) =\\s*(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # la_vol = "la volume[=\\s\\w\\.\\)\\(\\/]*?(\\d+\\.?\\d*)[\\s]*(ml)(?!\\/m2)",
    # la_idx_vol = "la volume[\\s\\w\\(\\)\\.\\/=]*?(\\d+\\.?\\d*)[\\s]*(ml\\/m2)",
    # ra_area = "right atrial area[=\\s]*(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # ra_idx_area = "right atrial area[=\\s\\w]*?(\\d+\\.?\\d*)[\\s]*(cm2\\/m2)",
    # basal_ant_wall = "basal anterior interventricular septum[\\s\\w=]*?(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # basal_inflat_wall = "basal inferolateral lv wall[\\s\\w=]*?(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # lvidd = "lv end-diastolic diameter[\\s\\w=]*?(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # lvids = "lv end-systolic diameter[\\s\\w=]*?(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # mapse = "mapse[\\s\\w=]*?(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # tapse = "tapse[\\s\\w=]*?(\\d+\\.?\\d*)[\\s]*(\\w*)",
    # lvef = "lv ejection fraction[\\s\\(\\)%]*?(\\d+\\.?\\d*)",
    # lvedv = "end diastolic volume[\\s]*ml\\(ml\\/m2\\)[\\s]*(\\d+\\.?\\d*)",
    # lvedv_idx = "end diastolic volume[\\s]*ml\\(ml\\/m2\\)[\\s]*\\d+\\.?\\d*[\\s]*\\((\\d+\\.?\\d*)",
    # lvesv = "end systolic volume[\\s]*ml\\(ml\\/m2\\)[\\s]*(\\d+\\.?\\d*)",
    # lvesv_idx = "end systolic volume[\\s]*ml\\(ml\\/m2\\)[\\s]*\\d+\\.?\\d*[\\s]*\\((\\d+\\.?\\d*)",
    # stroke_vol = "stroke volume[\\s]*\\(ml\\)[\\s]*(\\d+\\.?\\d*)",
    # cardiac_output = "cardiac output[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w\\/]*)",
    # cardiac_index = "cardiac index[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w\\/]*)",
    # lv_mass = "cardiac[\\s\\w\\.\\/\\(\\)]*mass[\\s]*g\\(g\\/m2\\)[\\s]*(\\d+\\.?\\d*)",
    # lv_idx_mass = "cardiac[\\s\\w\\.\\/\\(\\)]*mass[\\s]*g\\(g\\/m2\\)[\\s]*\\d+\\.?\\d*[\\s\\(]*(\\d+\\.?\\d*)",
    # gls_4c = "global longitudinal strain[\\s\\w\\.%,-]*4c[\\s\\w\\.%,-]*?(\\d+\\.?\\d*)(%)",
    # gls_2c = "global longitudinal strain[\\s\\w\\.%,-]*2c[\\s\\w\\.%,-]*?(\\d+\\.?\\d*)(%)",
    # mid_asc_ao_vmax = "mid ascending[\\s]*peak[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_asc_ao_antflow = "mid ascending[\\s\\w\\/\\\\(\\)\\.]*?antegrade[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_asc_ao_retflow = "mid ascending[\\s\\w\\/\\\\(\\)\\.]*?retrograde[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_asc_ao_netflow = "mid ascending[\\s\\w\\/\\\\(\\)\\.]*?net[\\s]*flow[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_asc_ao_time2vmax = "mid ascending[\\s\\w\\/\\\\(\\)\\.]*?time to peak flow[a\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_asc_ao_areasys = "mid ascending[\\s\\w\\/\\\\(\\)\\.]*?area in systole[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_asc_ao_areadia = "mid ascending[\\s\\w\\/\\\\(\\)\\.]*?area in diastole[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_asc_ao_apd_sys = "mid ascending[\\s\\w\\/\\\\(\\)\\.]*?ap diameter in systole[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_vmax = "mid descending[\\s]*peak[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_antflow = "mid descending[\\s\\w\\/\\\\(\\)\\.]*?antegrade[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_retflow = "mid descending[\\s\\w\\/\\\\(\\)\\.]*?retrograde[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_netflow = "mid descending[\\s\\w\\/\\\\(\\)\\.]*?net[\\s]*flow[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_time2vmax = "mid descending[\\s\\w\\/\\\\(\\)\\.]*?time to peak flow[d\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_areasys = "mid descending[\\s\\w\\/\\\\(\\)\\.]*?area in systole[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_areadia = "mid descending[\\s\\w\\/\\\\(\\)\\.]*?area in diastole[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # mid_desc_ao_apd_sys = "mid descending[\\s\\w\\/\\\\(\\)\\.]*?ap diameter in diastole[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # dist_asc_desc_arch = "distance from asc to desc arch[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # d_a_ms = "d - a[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([\\w*\\/]*)",
    # pwv = "pulse wave velocity[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_annulus = "aortic annulus[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_sov = "sinus of valsalva[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_stj = "sinotubular junction[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_mid_asc = "mid ascending[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_prox_arch = "proximal arch[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_mid_arch = "mid arch[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_dist_arch = "distal arch[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_prox_desc = "proximal descending[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_mid_desc = "mid descending[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_dia_hiatus = "diaphragm hiatus[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)",
    # ao_mid_abdo = "mid abdominal[\\s]*(\\d+\\.?\\d*)[\\s\\(]*([A-z\\/]*)"
  )

  return(regexs)
}
nicksunderland/rmriextractor documentation built on Dec. 22, 2021, 2:14 a.m.