I want the total lengths of regions that are exons, splicing, UTRs, and ncRNA. I can't distinguish them from the provided bed file. If there is a way using the bed file, please let me know. Thank you.
You can use a GTF with annotated intervals for the categories you want. For example this [one][1] from Ensembl. Use something like unix grep to create files for the categories you are interested. Then use [bedtools intersect][2] to get the regions of your BED file overlapping with each category GTF file. Finally use the procedure described [here][3] to find total lengths.

Also, if you are only interested on the ratio for each category, you could simplify this by using [bedtools jaccard][4]. In this case you would only need your BED file and the categories GTF files.


  [1]: ftp://ftp.ensembl.org/pub/release-84/gtf/homo_sapiens/Homo_sapiens.GRCh38.84.gtf.gz
  [2]: http://bedtools.readthedocs.io/en/latest/content/tools/intersect.html
  [3]: https://www.biostars.org/p/68283/
  [4]: http://bedtools.readthedocs.io/en/latest/content/tools/jaccard.html